Java8 List<Person> 转换为 Map<String, List<String>>:使用 Stream 和 Collectors
假设 Person 类中有一个属性为 name,那么可以使用 Java8 的 Stream 和 Collectors 来实现将 List
Map<String, List<String>> map = personList.stream()
.collect(Collectors.groupingBy(Person::getName,
Collectors.mapping(Person::getKey, Collectors.toList())));
其中,groupingBy 方法将 Person 对象按照 name 属性进行分组,mapping 方法将 Person 对象转换为其对应的 key 属性值,并将所有 key 属性值存储到一个 List 中。最终得到的结果是一个 Map,其中 key 为每个不同的 name 属性值,value 为包含该 name 属性值对应的所有 Person 对象的 key 属性值的 List。
原文地址: https://www.cveoy.top/t/topic/nlLv 著作权归作者所有。请勿转载和采集!