NSSet和NSMutableSet

集合是无序的而不随机的,而且不会存在两个相同的元素,如果在设置的时候放入了两个相同的元素,系统会自动删掉一个元素;

NSSet

初始化

NSSet *set = [NSSet setWithObjects:@1,@2,@3,@4,@4,nil];
//这种情况下,会删掉一个@4

NSSet没有字面量;

常用操作

NSLog(@"%lu",set.count);
//count属性返回值是NSUInteger;
NSArray *arr = [set allObjects];
//获取集合中所有的对象;
id *obj = [set anyObject];
//从集合中取出一个对象,系统会给你它认为你需要的对象;
NSLog(@"%d",[set containsObject:@1]);
//判断集合中是否包含某一个指定的对象;

NSMutableSet

初始化

NSMutableSet *mSet = [NSMutableSet setWithCapacity:0];

常用操作

[mSet addObject:@5];
//添加一个对象;
[mSet removeObject:@5];
//移除一个对象;
[mSet removeAllObjects];
//移除所有对象;

你可能感兴趣的:(NSSet和NSMutableSet)