您的位置:首页 > 其它

遍历方法比较

2016-05-28 15:01 197 查看
ForLoop

For - in

enumerateObjectsUsingBlock

enumerateObjectsWithOptions

enumerateKeysAndObjectsUsingBlock

进行速度比较后:

当只是遍历一个数组的时候使用For-in会比较快速, 推荐使用For-in遍历数组;

通过Value查询index的时候, 面对大量的数组推荐使用 enumerateObjectsWithOptions的并行方法;

当我们想遍历字典类型的时候, 推荐使用enumerateKeysAndObjectsUsingBlock。

另enumerateObjectsWithOptions(NSEnumerationConcurrent)和dispatch_apply(Concurrent)的遍历执行可以利用到多核cpu的优势(实验中在双核cpu上效率基本上x2);

遍历执行block会分配在多核cpu上执行(底层很可能就是gcd的并发queue),对于耗时的任务来说是很值得这么做的,而且在以后cpu升级成更多核心后不用改代码也可以享受带来的好处。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  遍历 方法比较