我是iOS新手。任何人都知道NSSet
是否比NSArray
更快?为什么我不总是只使用NSArray
?
有人解释我NSSet
和NSArray
之间的区别吗?
答案 0 :(得分:16)
NSSet用于拥有唯一对象。
NSArray可能有重复的对象。
NSSet是一个无序集合。
NSArray是一个有序的集合。
答案 1 :(得分:0)
当集合中的项目顺序不重要时,集合可以更好地查找集合中的项目。
原因是一个集合使用哈希值来查找项目(比如字典),而数组必须迭代其整个内容才能找到特定的对象。
此处有更详细的信息:
http://www.cocoawithlove.com/2008/08/nsarray-or-nsset-nsdictionary-or.html
答案 2 :(得分:0)
当元素的顺序不重要时,测试对象是否在集合中的性能很重要。即使数组是有序的,但测试它们的成员资格要比测试集慢。