Map的7种遍历方式
# Map 的 7 种遍历方式
# 1. 使用 entrySet() 遍历 Map
Map<String, Integer> map = new HashMap<>();
// 添加键值对
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
for (Map.Entry<String, Integer> entry : map.entrySet()) {
System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 2. 使用 keySet() 遍历 Map
Map<String, Integer> map = new HashMap<>();
// 添加键值对
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
for (String key : map.keySet()) {
System.out.println("Key: " + key + ", Value: " + map.get(key));
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 3. 使用 values() 遍历Map中的值
Map<String, Integer> map = new HashMap<>();
// 添加键值对
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
for (Integer value : map.values()) {
System.out.println("Value: " + value);
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 4. 使用 Iterator 遍历 Map
Map<String, Integer> map = new HashMap<>();
// 添加键值对
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, Integer> entry = iterator.next();
System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 5. 使用 forEach 遍历 Map
Map<String, Integer> map = new HashMap<>();
// 添加键值对
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
map.forEach((key, value) -> {
System.out.println("Key: " + key + ", Value: " + value);
});
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 6. 使用 Java8 的 Stream API 遍历 Map
Map<String, Integer> map = new HashMap<>();
// 添加键值对
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
map.entrySet().stream().forEach(entry -> {
System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
});
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 7. 双重 for-each 循环(仅适用于键值对都有集合类型的 Map)
Map<String, List<Integer>> map = new HashMap<>();
// 填充数据...
for (String key : map.keySet()) {
for (Integer value : map.get(key)) {
System.out.println("Key: " + key + ", Value: " + value);
}
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
上次更新: 2024/9/25 11:16:13