据蛤所知,OC通常有四种遍历方法,通常我们都是想到用啥就用啥,那么他们各自的效率到底是如何呢?下面让我们来测试一下。
首先,搞一个数组,丢1千万个垃圾对象进去,用它来测试遍历
本次测试都使用一个tmpArray来进行填充作业
一、普通for循环
耗时大约2.53秒
二、for-in
耗时大约1.93秒
三、代码块
耗时大约2.66秒
四、枚举器
耗时大约2.30秒
以上四种遍历方法都测试了好几遍 除了代码块,偏差都不大
代码块在 2.6~3.0 之前徘徊
用的是iphone5 ios8.4的模拟器
综上所述
for-in完胜
其次,为了方便推荐普通的for循环
block看着挺吊。。看来还是少用为妙
枚举器纯粹看个人喜好吧