第一種:
map map = new hashmap();
iterator iter = map.entryset().iterator();
while (iter.hasnext())
效率高,以後一定要使用此種方式!
第二種:
map map = new hashmap();
iterator iter = map.keyset().iterator();
while (iter.hasnext())
效率低,以後盡量少使用!
對於keyset其實是遍歷了2次,一次是轉為iterator,一次就從hashmap中取出key所對於的value。而entryset只是遍歷了第一次,他把key和value都放到了entry中,所以就快了。
1. map的四種遍歷方式
下面只是簡單介紹各種遍歷示例(以hashmap為例),各自優劣會在本文後面進行分析給出結論。
(1) for each map.entryset()
j**a
mapmap=newhashmap();
for(entryentry:map.entryset()){
entry.getkey();
entry.getvalue();
(2) 顯示呼叫map.entryset()的集合迭代器
j**a
iterator>iterator=map.entryset().iterator();
while(iterator.hasnext()){
map.entryentry=iterator.next();
entry.getkey();
entry.getvalue();
(3) for each map.keyset(),再呼叫get獲取
j**a
mapmap=newhashmap();
for(stringkey:map.keyset()){
map.get(key);
(4) for each map.entryset(),用臨時變數儲存map.entryset()
j**a
set>entryset=map.entryset();
for(entryentry:entryset){
entry.getkey();
entry.getvalue();
Map 的四種遍歷方法
對於map的遍歷相比大家都很常用 所以就記錄了 方便他人方便自己 public static void main string args 第二種 system.out.println 通過map.entryset使用iterator遍歷key和value iterator it map.entrys...
遍歷Map的四種方法
public static void main string args 第二種 system.out.println 通過map.entryset使用iterator遍歷key和value iterator it map.entryset iterator while it.hasnext 第三種 ...
遍歷Map的四種方法
第一種 普遍使用,二次取值 system.out.println 通過map.keyset遍歷key和value for string key map.keyset 第二種 system.out.println 通過map.entryset使用iterator遍歷key和value iterator...