> 到地图?,java,lambda,java-8,java-stream"/>

首页 > 解决方案 > 使用 Java 8 流如何转换 Map> 到地图?

问题描述

所以,我想用旧地图制作一张新地图。在 newMap<String, Integer>中,String 键表示与第一个映射中相同的键,Integer 值表示对应的大小List<Something>。我想使用 Java 8 流进行转换。我尝试了类似的东西,但它给了我错误。

Map<String, List<Something>> map1=.....
Map<String, Integer> map2;
map2=map1.entrySet().stream().collect(Collectors.toMap(p-> p.getKey(), p->getValue().size()));

标签: javalambdajava-8java-stream

解决方案


之前没pgetValue()

map2 = map1.entrySet().stream()
        .collect(Collectors.toMap(p -> p.getKey(), p -> p.getValue().size()));

推荐阅读