hashmap foreach方法
时间: 2023-07-11 19:46:45 浏览: 78
HashMap类中的forEach()方法是用于遍历Map中的所有元素,并对每个元素执行指定的操作。该方法接受一个实现了Consumer接口的lambda表达式作为参数,用于指定要执行的操作。具体实现如下:
```java
public void forEach(BiConsumer<? super K, ? super V> action) {
Objects.requireNonNull(action);
for (Node<K,V> e : table) {
for (; e != null; e = e.next) {
action.accept(e.key, e.value);
}
}
}
```
该方法中,首先会判断传入的Consumer实例是否为null,如果不为null,就遍历HashMap中的所有元素,对每个元素执行accept()方法,将键和值传递给Consumer实例。
例如,可以使用forEach()方法打印HashMap中的所有键值对:
```java
HashMap<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 + " : " + value);
});
```
输出结果为:
```
A : 1
B : 2
C : 3
```
阅读全文