gpt4 book ai didi

iphone - iOS:存储行和列的表

转载 作者:行者123 更新时间:2023-12-01 17:42:01 26 4
gpt4 key购买 nike

我只是在考虑什么是最好的方法,即数据结构来存储具有几行和几列的数据。我将其存储为:
1.数组数组?
2. NSDictionary?

还是iOS中有任何类似于网格的数据结构,我可以轻松地从数据结构中轻松获取任何行/列?例如,我必须能够获取第5行第3列中的值。目前,例如,我将每一行存储为一个数组,并将这些数组存储在另一个数组中(例如,一个数组的数组),然后获取第5行第3列中的值,我需要获取数组数组中的第5行,然后在生成的数组中,我需要获取第3个对象。有一个更好的方法吗?有什么想法吗?

最佳答案

然后要获取第5行第3列中的值,我需要获取第5行
在数组数组中排行,然后在结果数组中,我需要
获取第三个对象。有一个更好的方法吗?

数组数组很适合实现,最近添加到Objective-C的集合下标使此操作更容易-您可以使用类似以下的表达式

NSString *s = myData[m][n];

在第 n行的第 m列获取字符串。

也就是说,为您的数据结构创建一个单独的类仍然是一个好主意,这样可以保护其余代码,而无需了解数据的存储方式。这也将简化将实现从阵列数组更改为SQLite表或其他内容的过程。

您的数据存储类不必花哨或复杂。这是第一遍:
@interface DataTable

- (id)objectAtRow:(NSInteger)row column:(NSInteger)column;
- (void)setObjectAtRow:(NSInteger)row column:(NSInteger)column;

@end

我确定您可以看到如何根据数组数组来实现这些功能。当调用方尝试设置当前范围之外的值时,您需要做一些工作来添加行和/或列。您可能还想添加对 fast enumeration之类的支持以及对 property lists的写入和读取的支持,但这可能会在以后出现。

关于iphone - iOS:存储行和列的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16139343/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com