如何通过java8将列表转换为映射?

yang xu

你好我是 Java 世界的新手我有一个关于如何使用树度量将列表转换为地图的问题。

public class AdditionalMetrics implements Serializable {
    private static final long serialVersionUID = 3813944465194104658L;

    private Long id;
    private String masterId;
    private String nodeKey;
    private String nodeValue;
}

我想转换List<AdditionalMetrics>Map<masterId, Map<nodeKey, nodeValue>,我在互联网上搜索它只显示

additionalMetrics.stream()
    .collect(Collectors.toMap(AdditionalMetrics::getMasterId,
                              AdditionalMetrics::getNodeValue)
欧内斯特_k

您不能使用,toMap()因为您有许多 nodeKey/nodeValue 对映射到单个 masterId 值(除非您使用合并函数)。

这更容易进行分组masterId

Map<String, Map<String, String>> result = additionalMetrics.stream()
        .collect(Collectors.groupingBy(
                AdditionalMetrics::getMasterId,
                Collectors.toMap(AdditionalMetrics::getNodeKey, 
                        AdditionalMetrics::getNodeValue)));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用Java8流将列表列表转换为单个列表

Java8:如何通过流过滤列表值的映射

使用java8将列表转换为地图

使用 Java8 将列表转换为地图

如何在JAVA8中通过lambda表达式将Map转换为SortedMap?

将对象列表转换为<String,Map <String,Integer >> java8流的映射

如何将列表转换为Java-8流映射,其中Key是ListValue,而Value是该特定列表的值量

Java将列表转换为集合映射

Java8:通过联接值将Map <String,List <String >>转换为Map <String,String>

Java 8 将字符串列表的列表转换为映射

如何将Java 8 IntStream转换为列表?

如何将java.util.Date转换为Java8 java.time.YearMonth

如何将java.sql.timestamp转换为LocalDate(java8)java.time?

使用Java 8 Streams将模型列表转换为带有内部映射的Map

groupingBy和Java 8-在groupingBy之后将映射转换为对象列表

如何将大型XML文件转换为对象的流式java8

如何使用Streams和Lambda Java8将List <Object []>转换为Map <String,BigInteger>

如何在JAVA8中将地图数组转换为地图?

如何在Java8中将方法转换为单行

Java8:如何使用Stream将Map <X,List <Y >>转换为Map <Y,X>?

如何使用 java8 将 List<Employee> 转换为 Map<Employee, List<String>>?

Java8 Lambda将List转换为Maps

将数组Java8流转换为元组流

将嵌套的 for 循环转换为 java8 流

Java8-如何将嵌套地图转换为通过内部地图的键值收集的嵌套地图列表

如何在Java 8中将对象列表转换为映射?

如何将此代码转换为Java8 Lambda

如何使用 Gson 将 JSON 映射转换为自定义 Java 列表?

Java8:按键映射对象列表