原文 http://www.importnew.com/17262.html
有許許多多關於 Java 8 中流效率的討論,但根據 Alex Zhitnitsky 的測試結果顯示:堅持使用傳統的 Java 編程風格——iterator 和 for-each 循環——比 Java 8 的實現性能更佳。我們創建一個簡單的任務:從一個 ArrayList 找出最大值,將傳統方式與 Java 8 中的新方式進行測試比較。說實話,測試的結果讓我感到非常驚訝。
Java 8 中提供的任何一種新方式都會產生約 5 倍的性能差異。有時使用簡單迭代器循環比混合 lambda 表達式和流更有效,即便這樣需要多寫幾行代碼,且需要跳過甜蜜的語法糖(syntactic suger)。
使用迭代器或 for-each 循環是遍歷 ArrayList 最有效的方式,性能比采用索引值的傳統 for 循環方式好兩倍。