java8 map遍历 转换
时间: 2023-09-16 10:01:31 浏览: 179
在Java 8中,Map的遍历和转换可以通过使用Stream和Lambda表达式来实现。
对于Map的遍历,可以调用Map的entrySet()方法,获取包含Map的键值对的Set,然后使用Stream的forEach()方法来遍历每一个键值对,并对其进行相应的操作。例如:
```
Map<String, Integer> map = new HashMap<>();
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
map.entrySet().stream().forEach(entry -> {
System.out.println("Key: " + entry.getKey() + " Value: " + entry.getValue());
});
```
这样可以将Map中的键和值分别打印出来。
如果想要对Map进行转换,可以使用Stream的map()方法来对键值对进行转换操作。例如,将Map中的所有值加1并放入一个新的List中:
```
Map<String, Integer> map = new HashMap<>();
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
List<Integer> newList = map.entrySet().stream()
.map(entry -> entry.getValue() + 1)
.collect(Collectors.toList());
newList.forEach(System.out::println);
```
这样就可以将Map中的值加1,并将结果存储在一个新的List中,并逐个打印出来。
阅读全文