java 映射流到映射

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/26752919/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-11-02 10:32:16  来源:igfitidea点击:

Stream of maps to map

javalambdajava-8java-stream

提问by Dariusz Mydlarz

How can I flatten a Streamof Maps (of the same types) to a single Mapin Java 8?

我怎么能展平StreamMap(同类型)s到一个Map用Java 8?

Map<String, Long> toMap(Stream<Map<String, Long>> stream) {
    return stream. ???
}

回答by Eran

My syntax may be a bit off, but flatMap should do most of the work for you :

我的语法可能有点不对,但 flatMap 应该为你完成大部分工作:

Map<String, Long> toMap(Stream<Map<String, Long>> stream) {
    return stream.flatMap (map -> map.entrySet().stream()) // this would create a flattened
                                                           // Stream of all the map entries
                 .collect(Collectors.toMap(e -> e.getKey(),
                                           e -> e.getValue())); // this should collect
                                                               // them to a single map
}