【性能優化】性能優化

這篇文章打算邊整理邊寫,隨時更新

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吧。

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