美文网首页
iOS开发之遍历集合(NSArray,NSDictionary)

iOS开发之遍历集合(NSArray,NSDictionary)

作者: 是夏目啊 | 来源:发表于2017-03-07 17:33 被阅读0次

    一般都会想到  for循环, 毕竟Objective-C是基于C语言的,自然可以使用for循环。

    遍历数组 遍历字典

    我们都知道字典和set是无序的,所以我们无法根据特定的整数下标来直接访问其中的值,于是需要先获取字典中的键或者set中的所有对象,这样就可以在获取到的有序数组上进行遍历了。然而创建数组是要额外的开销的,还会多创建出一个数组对象,他会保留collection中的所有对象,占用了内存。

    所以,推荐用下面这张方式:

    基于块的遍历方式

    苹果封装了如此高效、优雅、易用的一套接口不用多么浪费。

    遍历数组 遍历字典

    就是这么简单,block直接把字典的key和value都给我们了,再也不用书写直白而繁琐的代码了。

    反向遍历

    相对于正向遍历多了一个枚举类型的参数NSEnumerationReverse,打开这个选项就可以反向遍历了。

    并发遍历

    并发遍历,参数是:NSEnumerationConcurrent,也就是可以同时遍历collection中的几个元素,具体数量根据系统资源而定。这样会充分利用系统资源,高效快捷的完成collection的遍历,系统底层会通过GCD来处理并发事宜,开发者不需要担心内存和线程,其他方式若要实现高效的并发遍历十分有难度。通过块枚举遍历,改变collection并不会引起崩溃。

    相关文章

      网友评论

          本文标题:iOS开发之遍历集合(NSArray,NSDictionary)

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