集合set的使用

将无序对象储存在集合中

集合是类似于数组的一组对象,只是其中包含的项目是无序的(而数组是有序的)。您通过枚举集合中的对象,或者将过滤器或测试应用到集合,来随机访问集合中的对象(使用 anyObject 方法),而不是按索引位置或通过键访问它们。

尽管集合对象在 Objective-C 编程中不如字典和数组那么常用,但它们在某些技术中是重要的集类型。在 Core Data(一种数据管理技术)中,当您声明对多关系的属性时,属性类型应该是 NSSet 或 NSOrderedSet。集合对于 UIKit 框架中的原生触摸事件处理也很重要,例如:

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch *theTouch = [touches anyObject];
    // handle the touch...
}

有序集合是集合基本定义的一个例外。在有序集合中,集合中的项目顺序很重要。有序集合中测试成员资格比数组中要快。

原文地址:https://www.cnblogs.com/lelun/p/5558569.html