NSMutableArray *sectionTitles;
[sectionTitles addObject:due];
Run Code Online (Sandbox Code Playgroud)
如何只为数组添加唯一值?
Jos*_*zzi 30
见鲁道夫的答案
我下面的旧答案现在已经过时了,已经有一段时间了.Rudoph对NSOrderedSet/ 的引用NSMutableOrderedSet是正确的,因为在这个Q和我的A.之后添加了这些类.
老答案
正如理查德所说,NSMutableSet只有你不需要维护一个有序的收藏品,它才能运作良好.如果您确实需要有序的集合,那么您可以做的最好的内容检查是:
if (![myMutableArray containsObject:newObject])
[myMutableArray addObject:newObject];
Run Code Online (Sandbox Code Playgroud)
根据评论更新
您可以将其包装在类似的方法中-addUniqueObject:,并将其放在NSMutableArray 类别中.
Rud*_*vič 19
更多2012-ish答案(如果有人在将来偶然发现):
使用NSOrderedSet和NSMutableOrderedSet.
关于NSOrderedSet文档性能的说明:
当元素的顺序很重要时,可以使用有序集作为数组的替代,并且在测试集合中是否包含对象时的性能是一个考虑因素 - 测试数组的成员资格要比测试集合的成员资格要慢.
| 归档时间: |
|
| 查看次数: |
8584 次 |
| 最近记录: |