📅  最后修改于: 2023-12-03 14:42:20.101000             🧑  作者: Mango
在 Java 中,HashMap 是一种常用的键值对映射容器。通过遍历 HashMap 可以方便地访问其中的键值对数据。
HashMap 提供了三种方式来遍历其存储的键值对数据。
使用 keySet()
方法获取 HashMap 中所有键的集合,然后通过循环遍历集合获取每个键的值。
HashMap<String, String> hashMap = new HashMap<>();
// 添加数据
hashMap.put("key1", "value1");
hashMap.put("key2", "value2");
hashMap.put("key3", "value3");
// 遍历键集合
for (String key : hashMap.keySet()) {
String value = hashMap.get(key);
System.out.println(key + " : " + value);
}
使用 values()
方法获取 HashMap 中所有值的集合,然后通过循环遍历集合获取每个值的键。
HashMap<String, String> hashMap = new HashMap<>();
// 添加数据
hashMap.put("key1", "value1");
hashMap.put("key2", "value2");
hashMap.put("key3", "value3");
// 遍历值集合
for (String value : hashMap.values()) {
for (String key : hashMap.keySet()) {
if (hashMap.get(key).equals(value)) {
System.out.println(key + " : " + value);
break;
}
}
}
使用 entrySet()
方法获取 HashMap 中所有键值对的集合,然后通过循环遍历集合获取每个键值对的键和值。
HashMap<String, String> hashMap = new HashMap<>();
// 添加数据
hashMap.put("key1", "value1");
hashMap.put("key2", "value2");
hashMap.put("key3", "value3");
// 遍历键值对集合
for (Map.Entry<String, String> entry : hashMap.entrySet()) {
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key + " : " + value);
}
以上三种方式都可以遍历 HashMap 中的键值对,根据具体场景和需求选择相应的方式即可。