java lambda 对list实现分组(groubby);并将对象的部分属性作为List对象,然后返回list中的第一个值
List<Persion> pList = new ArrayList<>{
...初始化数据
}
Class Persion{
String name;
String age;
//setter
//getter
}
实现目标:
对list按照age分组 并返回分组中第一个persion的name
实现:
Map<String, String> a = pList.stream().collect(Collectors.groupingBy(p->{
return p.getAge();
},Collectors.mapping(p->{
return p.getName();
}, Collectors.collectingAndThen(Collectors.toList(), v->v.get(0)))));