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())));