📜  Java HashMap forEach()(1)

📅  最后修改于: 2023-12-03 15:01:30.089000             🧑  作者: Mango

Java HashMap forEach()

Java HashMap是一种实现Map接口的哈希表数据结构,其中的forEach()函数可以帮助开发者在遍历HashMap时更加方便。

使用方法
1. 基本语法
map.forEach((key, value) -> {
    // 操作代码
});

其中,map为HashMap对象,(key, value)为遍历时当前元素的Key和Value,{}内为操作代码。

2. 示例代码

以下示例代码创建一个HashMap,将其元素遍历并输出:

import java.util.*;

public class Main {
    public static void main(String[] args) {
        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:" + key + ",Value:" + value);
        });
    }
}

输出结果为:

Key:A,Value:1
Key:B,Value:2
Key:C,Value:3
注意事项
  1. 遍历过程中,如果在操作代码中需要调用HashMap的remove()、put()等方法修改元素,会抛出ConcurrentModificationException异常。为避免异常出现,建议在修改前将需要修改的Key和Value存入新的数据结构中,遍历结束后再遍历这个新的数据结构进行修改。

  2. 在Lambda表达式中使用局部变量时需要注意变量是否为final类型。如果不是final类型,则需要保证变量不被修改,否则编译器会报错。

总结

Java HashMap的forEach()函数可以方便地遍历HashMap的元素,并进行相应操作。在使用时需要注意避免修改元素导致的ConcurrentModificationException异常,并注意Lambda表达式中使用局部变量的规范。