【性能优化】性能优化

这篇文章打算边整理边写,随时更新

1.循环遍历的优化

方法1

for(int i =0;i<array.length;i++){
    //...
}

方法2

for(int i=0,len=array.length;i<len;i++){
    //...
}

方法3

for(Object o : array){
    //...
}

可以看到,上述代码中用了3种方式对array中的所有元素进行循环遍历。其中方法1是最慢的一种,因为它每循环一次都需要重新计算一次array的长度。而方法2则相对快的多,因为它使用了局部变量len来记录数组的长度。方法3在没有JIT(Just In Time Compiler)的设备上运行最快,而在有JIT的设备上运行效率和方法2不相上下,但是方法3的写法需要JDK1.5之后才支持。

有一个特殊情况,对于ArrayList这种集合的遍历,方法2要比方法3循环更快,而其它的集合就没有这种情况。因此,对于我们来说,默认情况下可以使用方法3,而遍历ArrayList时还是使用方法2吧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章