Java 8映射按键分组的映射列表

Java 8映射按键分组的映射列表,java,java-8,java-stream,grouping,Java,Java 8,Java Stream,Grouping,我有以下内容:列表。我想获得一个映射使用收集器。groupingBy和收集器。映射: Map<String, List<Object>> result = listOfMaps.stream() .collect(Collectors.groupingBy(map -> map.get("id").toString(), Collectors.mapping(map -> map.g

我有以下内容:
列表
。我想获得一个
映射使用
收集器。groupingBy
收集器。映射

Map<String, List<Object>> result = listOfMaps.stream()
    .collect(Collectors.groupingBy(map -> map.get("id").toString(),
                                   Collectors.mapping(map -> map.get("name"),
                                                      Collectors.toList())));

IMO使用object而不是
Map
,因为这将简化流程<代码>类MyObject{String id;String name;}
并使用以下代码来实现最终结果:
list.stream().collect(Collectors.groupingBy(MyObject::getId,Collectors.mapping(MyObject::getName,Collectors.toList())@user1990218 De nada,arriba!!
{
    a: ["AAA", "BBB"],
    b: ["XXX", "YYY"]
}
Map<String, List<Object>> result = listOfMaps.stream()
    .collect(Collectors.groupingBy(map -> map.get("id").toString(),
                                   Collectors.mapping(map -> map.get("name"),
                                                      Collectors.toList())));
Map<String, List<Object>> result = listOfMaps.stream()
    .filter(map -> map.get("id") != null))
    .collect(Collectors.groupingBy(map -> map.get("id").toString(),
                                   Collectors.mapping(map -> map.get("name"),
                                                      Collectors.toList())));