HashMap的2中遍歷方式比較

2021-09-01 13:53:21 字數 936 閱讀 3324

首先我們準備資料,準備乙個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中遍歷方式比較

url 首先我們準備資料,準備乙個map mapmap new hashmap for int i 0 i 10 i 然後我們採用傳說中的key遍歷 步驟 先弄成key set,然後遍歷key set 通過key從map中獲取value iteratoriterator map.keyset ite...

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 李...