java lambda 对list实现分组(groubby);并将对象的部分属性作为List对象,然后返回list中的第一个值

List pList = new ArrayList<>{

...初始化数据

}

Class Persion{

String name;

String age;

 

//setter 

//getter

}

实现目标:

对list按照age分组 并返回分组中第一个persion的name

 

实现:

Map a = pList.stream().collect(Collectors.groupingBy(p->{
                return p.getAge();
            },Collectors.mapping(p->{
                return p.getName();
            }, Collectors.collectingAndThen(Collectors.toList(), v->v.get(0)))));

你可能感兴趣的:(lambda,java)