[url]
首先我們準備資料,準備乙個map
mapmap = new hashmap();
for (int i = 0; i < 10; i++)
然後我們採用傳說中的key遍歷:
步驟:先弄成key set,然後遍歷key set 通過key從map中獲取value
iteratoriterator = map.keyset().iterator();
while (iterator.hasnext())
system.out.println("*********************");
然後我們在採用entryset的方式遍歷下:
步驟:先弄成entryset 然後遍歷他,獲取key和value
set> set = map.entryset();
iterator> s = set.iterator();
while (s.hasnext())
孰優孰劣?
看jdk原始碼,對比兩種訪問方式:
首先看keyset訪問方式:
public setkeyset()
public k next()
public void remove()
};
} public int size()
public boolean contains(object k)
};
} return keyset;
}
也就是呼叫entryset()從entryset中獲取key,也就是說是在entry set的基礎上來做的,貌似多次一舉
結論:通過上述**我們就知道,採用entryset方式要優於keyset,因為keyset首先要訪問entryset來組建乙個keyset,重複工作不言而喻
HashMap的2中遍歷方式比較
首先我們準備資料,準備乙個map mapmap new hashmap for int i 0 i 10 i 然後我們採用傳說中的key遍歷 步驟 先弄成key set,然後遍歷key set 通過key從map中獲取value iteratoriterator map.keyset iterato...
HashMap遍歷方式
hashmaphashmap new hashmap hashmap.put a a hashmap.put b b hashmap.put c c hashmap.put d d 第一種 普遍使用,二次取值 system.out.println 通過map.keyset遍歷key和value fo...
HashMap遍歷方式
hashmap是乙個鍵值對的集合,我們不能通過簡單的迴圈來遍歷hashmap,所以我們一般通過以下兩種方式來遍歷hashmap,一種是通過keyset集合來遍歷,另一種是通過entry鍵值對物件來遍歷。hashmap string string map newhashmap 16 map.put 李...