nsarray可以容纳多少个对象?

Jus*_*tin 1 cocoa objective-c nsdictionary nsarray

可能重复:
NSArray中的最大对象数量

我只是想知道我可以在NSArray中放入多少个对象,因为我需要找到像数组一样的函数,但我需要保存大量数据(在900到1200个字符串之间).我正在考虑使用NSDictionary来保存数据,但它似乎不符合要求.你认为NSArray会持有那么多对象,还是应该使用NSDictionary?

Chu*_*uck 6

从技术上讲,NSArray可以容纳NSUIntegerMax对象(这是可以从中返回的最大值count).在像iPhone这样的32位系统上,这个数字略高于40亿.在像大多数Mac一样的64位系统上,它要高出许多个数量级.当你甚至需要考虑在NSArray中耗尽空间时,你将首先处理其他扩展问题,比如40亿个四字符字符串会占用16 GB的内存.

NSArray有两个不同大小的数组的内部实现 - 1200个项目仍然在"小数组"实现中.