在Java中遍历Map可以采用以下几种常见方法:
1、使用 entrySet 遍历
这是最常见的遍历方式,同时访问键值对。
for (Map.Entry<K, V> entry : map.entrySet()) {
K key = entry.getKey();
V value = entry.getValue();
// 处理键值对
}
2、遍历 keySet 后获取对应的值
当只需要键或值时,可以通过遍历键集,然后获取每个键对应的值。
for (K key : map.keySet()) {
V value = map.get(key);
// 处理键值对
}
3、直接遍历 values
如果只关心值而不关心键,可以直接遍历值集合
for (V value : map.values()) {
// 处理值
}
4、使用 Iterator 遍历
虽然不如前几种方式简洁,但在特定场景下可能更灵活。
Iterator<Map.Entry<K, V>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<K, V> entry = iterator.next();
K key = entry.getKey();
V value = entry.getValue();
// 处理键值对
}
5、Java 8及以上版本的Lambda表达式和Stream API
map.forEach((key, value) -> {
// 处理键值对
});
这些方法涵盖了基本的Map遍历需求,适用于包括但不限于HashMap, TreeMap, LinkedHashMap, Hashtable等各种Map实现。