Java 中的 Map 可以使用多种方式进行遍历。以下是五种常见的遍历方式
- 使用for-each 遍历
- 使用Iterator(迭代器)遍历
- 使用keySet() 遍历
- 使用Lambda 表达式遍历
- 使用 Stream API 遍历
在Java中,Map的遍历有多种方式,以下是5种常见的遍历方法:
使用entrySet()
遍历
通过entrySet()
方法获取Map中的键值对集合,然后使用for-each
循环遍历。
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());
}
使用keySet()
遍历
通过keySet()
方法获取Map中的键集合,然后使用for-each
循环遍历键,并通过键获取对应的值。
for (String key : map.keySet()) {
System.out.println("Key: " + key + ", Value: " + map.get(key));
}
使用values()
遍历
通过values()
方法获取Map中的值集合,然后使用for-each
循环遍历值。
for (Integer value : map.values()) {
System.out.println("Value: " + value);
}
使用Iterator
遍历
通过entrySet()
方法获取Map中的键值对集合,然后使用Iterator
进行遍历。
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());
}
使用Java 8的forEach
方法
在Java 8及以上版本中,可以使用forEach
方法结合Lambda表达式进行遍历。
map.forEach((key, value) -> {
System.out.println("Key: " + key + ", Value: " + value);
});
这些方法各有优缺点,选择哪种方式取决于具体的应用场景和需求。