JAVA8 Collectors.groupingBy[通俗易懂]

JAVA8 Collectors.groupingBy[通俗易懂]1.按长度对字符串进行分组List<String>list=Arrays.asList(“a”,”bb”,”cc”,”ddd”);Map<Integer,List<String>>result=list.stream().collect(Collectors.groupingBy(String::length));System.ou…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1.按长度对字符串进行分组

List<String> list = Arrays.asList("a", "bb", "cc", "ddd");
Map<Integer, List<String>> result = list.stream().collect(Collectors.groupingBy(String::length));
System.out.println(result);
// {1=[a], 2=[bb, cc], 3=[ddd]}

2.根据ExcelEntity的某个字段进行分组

List<ExcelEntity> list = new ArrayList<>();
ExcelEntity entity1 = new ExcelEntity();
entity1.setGlobalNo("001");
entity1.setUserId("zhangsan");
entity1.setAddress("北京");
entity1.setGoodsCd("A001");
list.add(entity1);
ExcelEntity entity2 = new ExcelEntity();
entity2.setGlobalNo("002");
entity2.setUserId("lisi");
entity2.setAddress("上海");
entity2.setGoodsCd("A002");
list.add(entity2);
ExcelEntity entity3 = new ExcelEntity();
entity3.setGlobalNo("003");
entity3.setUserId("wangwu");
entity3.setAddress("辽宁");
entity3.setGoodsCd("A003");
list.add(entity3);

Map<String, List<ExcelEntity>> map = list.stream()
        .collect(Collectors.groupingBy(ExcelEntity::getGlobalNo));
System.out.println(map);
// {001=[com.ExcelEntity@214c265e], 002=[com.ExcelEntity@448139f0], 003=[com.ExcelEntity@7cca494b]}

3.计数

Map<String, Long> map = list.stream()
        .collect(Collectors.groupingBy(ExcelEntity::getGlobalNo, Collectors.counting()));
System.out.println(map);
// {001=1, 002=1, 003=2}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/171461.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号