stream对map集合进行修改
时间: 2023-08-08 19:13:19 浏览: 41
可以使用Java 8中的Stream API和map()方法来对Map集合进行修改。下面是一个示例代码:
```
Map<String, Integer> map = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
map.put("orange", 3);
map = map.entrySet().stream()
.map(e -> {
if(e.getKey().equals("banana")) {
return new AbstractMap.SimpleEntry<>(e.getKey(), e.getValue() * 2);
} else {
return e;
}
})
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
System.out.println(map);
```
以上代码将会把Map中键为"banana"的元素值乘以2,输出结果为`{orange=3, banana=4, apple=1}`。这里使用`entrySet()`方法将Map转化为Set类型的元素集合,然后使用`stream()`方法将其转化为流,通过`map()`方法对每个元素进行修改,最后使用`collect()`方法将流转化为Map集合。