public static void main(String[] args) {
EmployDO zhangsan = new EmployDO.Builder().name("张三").sex("男").position("职员").status("在职").age("20").build();
EmployDO lisi = new EmployDO.Builder().name("李四").sex("男").position("职员").status("在职").age("24").build();
EmployDO wangwu = new EmployDO.Builder().name("王五").sex("男").position("职员").status("离职").age("21").build();
EmployDO yangliu = new EmployDO.Builder().name("杨六").sex("男").position("职员").status("在职").age("25").build();
EmployDO lihua = new EmployDO.Builder().name("李华").sex("女").position("领导").status("在职").age("20").build();
EmployDO xiaohua = new EmployDO.Builder().name("小花").sex("女").position("职员").status("离职").age("23").build();
EmployDO xiaofeng = new EmployDO.Builder().name("小凤").sex("女").position("领导").status("在职").age("25").build();
List<EmployDO> employDOS = Arrays.asList(zhangsan, lisi, wangwu, yangliu, lihua, xiaohua, xiaofeng);
// 根据sex分组
Map<String, List<EmployDO>> map = employDOS.stream().collect(Collectors.groupingBy(EmployDO::getSex));
System.out.println(JSON.toJSONString(map));
// 根据sex分组,计算出每个小组的人数
Map<String, Long> countMap = employDOS.stream().collect(Collectors.groupingBy(employ -> employ.getSex(), Collectors.counting()));
System.out.println(JSON.toJSONString(countMap));
}
输出 :
map输出:
{“女”:[{“age”:“20”,“name”:“李华”,“position”:“领导”,“sex”:“女”,“status”:“在职”},{“age”:“23”,“name”:“小花”,“position”:“职员”,“sex”:“女”,“status”:“离职”},{“age”:“25”,“name”:“小凤”,“position”:“领导”,“sex”:“女”,“status”:“在职”}],“男”:[{“age”:“20”,“name”:“张三”,“position”:“职员”,“sex”:“男”,“status”:“在职”},{“age”:“24”,“name”:“李四”,“position”:“职员”,“sex”:“男”,“status”:“在职”},{“age”:“21”,“name”:“王五”,“position”:“职员”,“sex”:“男”,“status”:“离职”},{“age”:“25”,“name”:“杨六”,“position”:“职员”,“sex”:“男”,“status”:“在职”}]}
countMap输出:
{“女”:3,“男”:4}
版权声明:本文为lsy_cheer原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。