1. 程式人生 > >java為什麼 foreach比for效率高

java為什麼 foreach比for效率高

(1)for是使用下標(偏移量)定位的.
(2)foreach應該是使用類似迴圈子的機構
(3)對隨機訪問效率高的ArrayList. 使用下標訪問效率本身很高.foreach內部的迴圈子直接封裝下標,自己實現的for比foreach更直接,效率稍高些,但差別不會太大,仍然在一個數量級上。 (4)如果使用插入和刪除效率高的LinkedList,for基於下標訪問會每次從頭查詢,效率會很低.foreach迴圈子使用高效的地址運算,效率會高.其差距將很大,完全不在一個數量級別.如果陣列很大,差別可能會幾百甚至上千倍.