獲取map的key和value的方法分為三種形式(前兩種都有各自的迭代器):
map.keyset():先獲取map的key,然後根據key獲取對應的value / 或者單獨獲取 key;
map.entryset():同時查詢map的key和value,只需要查詢一次。
map.values():單獨獲取 value
同時遍歷key和value時,keyset與entryset方法的效能差異取決於key的具體情況,如複雜度(複雜物件)、離散度、衝突率等。換言之,取決於hashmap查詢value的開銷。
for(string key : map.keyset())
iteratoriter = map.keyset().iterator();
while(iter.hasnext())
for(entryvo : map.entryset())
iterator> iter = map.entryset().iterator();
while(iter.hasnext())
mapmap = new hashmap();
//遍歷map中的鍵
for (integer key : map.keyset())
mapmap = new hashmap();
//遍歷map中的值
for (integer value : map.values())
使用泛型:
mapmap = new hashmap();
iterator> entries = map.entryset().iterator();
while (entries.hasnext())
不使用泛型:
map map = new hashmap();
iterator entries = map.entryset().iterator();
while (entries.hasnext())
你也可以在 keyset 和 values上應用同樣的方法。
該種方式看起來冗餘卻有其優點所在。
Java 遍歷Map的三種方法
集合的乙個很重要的操作 遍歷,學習了三種遍歷方法,三種方法各有優缺點 public class testmap 最常規的一種遍歷方法,最常規就是最常用的,雖然不複雜,但很重要,這是我們最熟悉的,就不多說了!public static void work mapmap 利用keyset進行遍歷,它的優...
Map的三種遍歷方法
最常規的一種遍歷方法,最常規就是最常用的,雖然不複雜,但很重要,這是我們最熟悉的。public static void work mapmap 利用keyset進行遍歷,它的優點在於可以根據你所想要的key值得到你想要的values,更具靈活性!public static void workbyke...
Map的三種 遍歷方式
map中沒有迭代器 不能直接迭代 遍歷 set keyset 這個方法 是 把map中的所有鍵 key 取出 放入乙個set集合中 返回給你 v get object key 是通過傳入鍵key 返回的是 鍵key 對應value值 inte ce intera test類 去實現interb 介面...