HashMap的三种遍历方式
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class Test {
public static void main(String[] args) {
HashMap<String, String> hashMap = new HashMap<>();
hashMap.put("1","value1");
hashMap.put("2","value2");
hashMap.put("3","value3");
hashMap.put("4","value4");
hashMap.put("5","value5");
hashMap.put("6","value6");
/**
* 第一种遍历方式,采用for遍历key值,然后通过key去获取hashmap中的数据
*/
System.out.println("*********第一种遍历方式*********");
for (String key:hashMap.keySet()) {
System.out.println("key: " + key + " value: " + hashMap.get(key));
}
/**
* 第二种遍历方式,采用Iterator 把hashmap中的数据放到迭代器中,然后用while循环把迭代器中的数据都读出来
*/
System.out.println("*********第二种遍历方式*********");
Iterator iterator = hashMap.entrySet().iterator();
while(iterator.hasNext()) {
Map.Entry<String, String> entry=(Map.Entry<String, String>) iterator.next();
System.out.println("Key: "+entry.getKey()+" Value: "+entry.getValue());
}
/**
* 第三种遍历方式,采用for循环遍历hashmap中的数据,使用方便,但是数据量小时好用,如果数据量大的话非常消耗性能
*/
System.out.println("*********第三种遍历方式*********");
for(Map.Entry<String, String> entry: hashMap.entrySet()) {
System.out.println("Key: "+ entry.getKey()+ " Value: "+entry.getValue());
}
}
}