據蛤所知,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看著挺吊。。看來還是少用為妙
枚舉器純粹看個人喜好吧