java - map 流到 map

标签 java lambda java-8 java-stream

如何在 Java 8 中将 Map(相同类型)的 Stream 扁平化为单个 Map

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

最佳答案

我的语法可能有点偏离,但 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
}

关于java - map 流到 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62119189/

相关文章:

c++线程,重复/缺少线程

java 8 流如何在结果分组中进行分组?

java - 单行类实例实现

java - 如何收集 pojo id 到 pojo 上集合的一组属性的映射

java - 在带有 Morphia 的 Mongo 聚合管道中使用运算符的正确方法是什么

java - 在 Opengl ES 2.0 中旋转和缩放图片

java - 如何同时运行java 6和java 7

java - 导入类似包的类

c# - 创建具有多个 OR 和 AND 条件的 LINQ 表达式树

java - 过滤映射并返回键列表