IOS基础---Objective-C学习之NSSet\NSMutableSet

一、NSSet

1> NSSet是一组单值对象的不可变集合,集合中元素没有顺序;

2> 操作包括:搜索、添加、删除集合中的元素(仅用于可变集合)、比较两个集合,计算两个集合的交集和并集等。

3> 常用方法:

使用一系列对象创建新集合:

+ (instancetype)setWithObjects:obj1, obj2, ..., nil;


 

使用一系列对象初始化新分配的集合:

- (instancetype)initWithObjects:(const id [])objects count:(NSUInteger)cnt;


 

确定集合是否包含anObject对象:

- (BOOL)containsObject:(id)anObject;


 

使用member:方法确定集合是否包含object对象:

- (id)member:(id)object;


 

为集合中的所有对象返回一个NSEnumerato对象:

- (NSEnumerator *)objectEnumerator;


 

确定receiver的每个元素是否都出现在otherSet中:

- (BOOL)isSubsetOfSet:(NSSet *)otherSet;


 

确定是否receiver中至少一个元素出现在对象otherSet中:

- (BOOL)intersectsSet:(NSSet *)otherSet;


 

确定两个集合是否相等:

- (BOOL)isEqualToSet:(NSSet *)otherSet;


 

二、NSMutableSet

1> NSMutableSet是NSSet的子类,是可变集合;

2> 常用方法:

创建新集合,使其具有存储numItems个元素的初始空间:

+ (instancetype)setWithCapacity:(NSUInteger)numItems;


 

将新分配的集合设置为numItems个元素的存储空间:

- (instancetype)initWithCapacity:(NSUInteger)numItems;


 

将对象object添加到集合中:

- (void)addObject:(id)object;


 

从集合中删除对象:

- (void)removeObject:(id)object;


 

删除集合中所有对象:

- (void)removeAllObjects;


 

将对象otherSet的所有元素添加到接收者:

- (void)unionSet:(NSSet *)otherSet;


 

从接收者中删除otherSet的左右元素:

- (void)minusSet:(NSSet *)otherSet;


 

从接受者中的所有不属于otherSet的元素删除:

- (void)intersectSet:(NSSet *)otherSet;


 

 

三、NSArray和NSSet的对比:

1> 共同点:

都是集合;

都能存放多个OC对象;

只能存放OC对象,不能存放非OC对象类型(基本数据类型)。

2> 不同点:

NSArray有顺序;

NSSet没有顺序。

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值