创建大量对象Objective-C

时间:2014-05-28 16:34:03

标签: ios objective-c

我需要以“A到Z”的方式显示数据库中的项目列表。该项目清单是> 1200.我的问题是:我可以简单地使用NSArray吗?或者使用像NSDictionary这样的东西会更好吗?任何建议都将不胜感激。

3 个答案:

答案 0 :(得分:3)

您的问题中没有足够的信息来知道是使用数组还是字典(或集合)。一切都取决于你想要如何访问这些东西。如果是关键字,那就是字典。如果按索引号,它是一个数组。等等。

当然 number 元素(出现在您的问题中)与选择无关。 1200件东西的集合是1200件事的集合,无论它是什么类型的集合。 1200很小。如果它是12000或120000,您可能会开始考虑在磁盘上保留一个真正的数据库 - 并且没有类型的内存集合。

答案 1 :(得分:2)

我在你的问题中看到的关键提示是“以A到Z的方式”。数组保存有序的对象集合。要以A到Z顺序呈现事物的集合,需要对它们进行排序。

集合和字典是无序集合。

使用对象保存数据而不是使用简单的内存结构会产生少量开销。如果您正在处理数十万或数百万的事情,那么开销可能会成为一个考虑因素。但是对于4位数的项目,这不是一个问题。

NSArrays存储对象。如果您已经将事物保存在objets中,NSArray / NSMutableArray是组织对象的绝佳选择。

正如另一张海报所说,如果你正在处理大量的对象,你应该考虑使用像sql这样的数据库系统,但是按照目前的规模,内存解决方案应该没问题。

答案 2 :(得分:0)

如果你有重复项并且你想迭代你的集合,你应该使用NSArray。

选择您的数据结构,思考如何使用和访问存储在其中的信息。