NSSet和NSMutableSet介绍

NSSet在追求效率优化方面比NSArray更优,尤其在苹果端数据库查询和数组遍历判断唯一性时。集合是哈希表,查找速度快,无顺序。NSSet是无序且不重复的对象集合,而NSMutableSet是其可变版本,允许添加和删除元素。
摘要由CSDN通过智能技术生成

NSSet集合对象是用来干什么的呢,在之前做项目中很少用,但并不是代表不好用,在追求效率优化方面NSSet要比NSArray要高的多,比如在苹果端查找数据库中的数据NSSet要比NSArray要快的多。学习了NSSet可能会发现项目中有些情况可以优化,尤其是数组遍历,判断唯一性,还有其他

  • 集合是一种哈希表,运用散列算法,查找集合中的元素比数组速度更快,但是它没有顺序。

  • 集合(NSSet)和数组(NSArray)有相似之处,都是存储不同的对象的地址;不过NSArray是有序的集合,NSSet是无序的集合。

  • 存储的所有对象只能有唯一一个,不能重复。

NSSet介绍

    NSArray *array = [[NSArray alloc] initWithObjects:@"abc",@"def", @"ghw",nil];
        NSSet *set1 = [NSSet setWithArray:array];
        NSLog(@"%@", set1);
        NSLog(@"%@",[set1 allObjects]);

打印结果:

2018-03-14 11:27:19.262887+0800 test[9761:369467] {(
    abc,
    def,
    ghw
)}
2018-03-14 11:27:19.263065+0800 test[9761:369467] (
    abc,
    def,
    ghw
)
 //两种不同的创建集合的方法
 NSSet *set2 = [[NSSet alloc]initWithObjects:@"sex",@"age",@"create",@"name",@"first",nil];
        NSSet *set3 = [NSSet setWithObjects:@"sex",@"age",@&#
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值