java map foreach

在Java中,MapforEach方法是一种简洁高效的方式来遍历Map中的所有条目。forEach方法接受一个BiConsumer接口实例,该接口定义了一个accept方法,用于对Map中的每个键值对执行操作。

下面是一个使用forEach方法遍历Map的例子:

import java.util.HashMap;
import java.util.Map;
import java.util.function.BiConsumer;

public class MapDemo {
    public static void main(String[] args) {
        Map<String, String> map = new HashMap<>();
        map.put("name1", "zhangsan");
        map.put("name2", "lisi");
        map.put("name3", "wangwu");

        map.forEach((key, value) -> {
            if (value.equals("lisi")) {
                System.out.println("Found: " + key + " = " + value);
            }
        });
    }
}

在这个例子中,我们创建了一个HashMap,并向其中添加了三个键值对。然后,我们使用forEach方法遍历Map,并在accept方法中检查每个值是否等于"lisi"。如果是,则打印出相应的键值对。

forEach方法的内部实现是通过迭代MapentrySet集合,对每个Entry对象调用accept方法。BiConsumer接口的accept方法接受两个参数:键(K)和值(V),对应于Map中的键值对。

需要注意的是,forEach方法在Java 8中被引入,因此在使用之前请确保你的Java版本至少是1.8或更高。

Top