美文网首页
iOS NSSet彩蛋

iOS NSSet彩蛋

作者: 哇哈哈有点甜 | 来源:发表于2019-09-27 13:44 被阅读0次

        关于NSSet和NSArray的区别,这里不再赘述,网上有非常多讲解的很优秀的文章,基础用法可参照以下文章

    NSSet 总结 - iOS - 简书

        本文主要分享一个小编使用时发现的彩蛋(如有雷同,纯属意外,联系小编删除),下面进入主题

        周所周知,NSSet 集合和数组(NSArray)相似,都是存储不同对象的地址。而 NSArray 是有序的集合,而 NSSet 是无序的集合。其中,NSSet有一个特性,就是当集合中有相同值时,会默认删除相同的值,只保留一个,也就是保证了集合中数据的唯一性。于是,小编便想到,这个特性可以用于处理过滤 NSArray 中相同数据,具体代码如下:

        NSArray *arr = @[@"1", @"2", @"3", @"3", @"2"];

        NSLog(@"%@", arr);

        NSSet *set = [[NSSet alloc] initWithArray:arr];

        NSLog(@"%@", set);

        NSArray*newArr = [set allObjects];

        NSLog(@"%@", newArr);

    arr为需要过滤重复数据的数组,newArr为过滤后需要的数组。打印结果如下:

    结果预期一样,通过来回转换,很简单就可以实现数据过滤

    注:文章如有误,欢迎指正交流😄😄

    相关文章

      网友评论

          本文标题:iOS NSSet彩蛋

          本文链接:https://www.haomeiwen.com/subject/xpwlyctx.html