如何在java 8中初始化和填充Map

bre*_*sai 3 java java-8

我需要初始化一个包含500个条目的Map,并将每个条目设置为0.如何使用Java 8实现这一点

Map<Integer ,Integer> map = new HashMap<>(500);
for (int i=0; i < 500; i ++){
    map.put(i,0);
}
Run Code Online (Sandbox Code Playgroud)

Era*_*ran 6

相同的代码在Java 8中可以正常工作.

其他做同样事情的方法:

Map<Integer,Integer> map = new HashMap<>(500);
IntStream.range(0,500).forEach(i -> map.put(i,0));
Run Code Online (Sandbox Code Playgroud)

要么

Map<Integer,Integer> map = IntStream.range(0,500).boxed().collect(Collectors.toMap(Function.identity(),i -> Integer.valueOf(0)));
Run Code Online (Sandbox Code Playgroud)