在開發過程中少不了迭代器(遍歷)的使用,目前已知的迭代器有:for、for的增強版、iterator
那麼各自的迭代器是否有效能上的差別呢?
下面我們來試驗一下:
public static void main(string args)
long a1 = system.currenttimemillis();
//普通的for
int size = test.size();
for (int i = 0; i < size; i++)
long a2 = system.currenttimemillis();
//for增強版
for (integer integer : test)
long a3 = system.currenttimemillis();
//iterator
iteratoriterator = test.iterator();
while (iterator.hasnext())
long a4 = system.currenttimemillis();
system.out.println("普通的for***************===="+ (a2 - a1));
system.out.println("for增強版***************===="+ (a3 - a2));
system.out.println("iterator***************===="+ (a4 - a3));
}
執行第一次的結果:
普通的for***************====1
for增強版***************====70
iterator***************====5293
執行第二次的結果:
普通的for***************====2
for增強版***************====86
iterator***************====4226
截圖如下
事實證明,for普通的效率是最高的,for增強版其次,但是使用iterator效率是最差的。
所以建議使用:普通的for
覺得本文章對您有幫助,那麼可以選擇打賞。
打賞多少,您高興就行,謝謝您對我的支援! ~(@^_^@)~
Java集合的專有遍歷方式 迭代器遍歷
問題引入 需求 儲存自定義物件並遍歷 有5個學生,學生有姓名,年齡,遍歷5個學生,輸出5個學生對應的資訊 集合改進 分析 1 建立乙個學生類 2 在測試類中,建立集合物件 3 建立5個具體學生物件,並且新增集合中 4 將集合轉換陣列 5 遍歷 6 輸出 public static void main...
迭代器遍歷
iterator物件稱為迭代器,主要用於遍歷collection 集合中的元素。所有實現了collection介面的集合類都有乙個iterator 方法,用以返回乙個實現了lterator介面的物件,即可以返回乙個迭代器。lterator的結構.iterator僅用於遍歷集合,iterator本身並...
list集合,迭代器
list是乙個訪問有序的集合,它是乙個帶有索引的集合,通過索引就可以精確的操作集合中的元素 與陣列的索引是乙個道理 list集合中可以有重複的元素。迭代器一般插入元素會有併發異常,listiterator可以解決這個問題。listiterator listiterator list.listiter...