使用java8进行分组

在开发中会遇到这样的一个场景,按照某一个字段分组,生成一个以分组id为key,组信息是一个list的map,java8中提供了一个方法 
List里面的对象元素,以某个属性来分组,例如,以id分组,将id相同的对象放到一起

Map<Integer, List<UserInfo>> groupBy = appleList.stream().collect(Collectors.groupingBy(UserInfo::getId));

结果:
 

{1=[UserInfo{id=1, name=’张三’}, Apple{id=1, name=’李四’}], 2=[UserInfo{id=2, name=’王五’}

 

 

将list对象转化为map

 

Map<Integer, UserInfo> groupBy = appleList.stream().collect(Collectors.toMap(UserInfo::getId,userInfo->userInfo));

    原文作者:大艺术家南南
    原文地址: https://blog.csdn.net/razeSpirit/article/details/78751163
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞