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}

 

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Monkey源代码分析之执行流程

    Monkey源代码分析之执行流程

    2022年1月19日
    55
  • Springboot 项目JVM优化「建议收藏」

    Springboot 项目JVM优化「建议收藏」一,SpringBoot扫包优化@SpringBootApplication注解自动获取应用的配置信息,会给应用带来一些副作用。由自动配置(auto-configuration)和组件扫描(componentscanning)组成,这跟使用@Configuration、@EnableAutoConfiguration和@ComponentScan三个注解的作用是一样的。…

    2022年5月2日
    37
  • Java ListNode 链表

    JavaListNode链表基本结构基本初始化添加构造方法初始化范型写法创建与遍历链表插入节点替换节点删除节点补充说明基本结构链表是一种数据结构,由数据和指针构成,JavaListNode链表是一种由Java自定义实现的链表结构。基本初始化classListNode{//类名:Java类就是一种自定义的数据结构intval;//数据:节点数据ListNodenext;//对象:引用下一个节点对象。在Jav

    2022年4月8日
    253
  • vue开发企业微信_vue全局api

    vue开发企业微信_vue全局apiVue+Axios+Nginx实现调用企业微信API详细过程一、思路2.读入数据二、思路2.读入数据总结一、思路先捋清楚整体的步骤:1、首先需要从企业微信管理后台拿到企业ID和应用的Secret2.读入数据代码如下(示例):data=pd.read_csv(‘https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv’)print(data.head())该处使用的url网络请求的数据。二、思路代码如

    2022年10月2日
    4
  • 汉化日记_sorceress alive汉化

    汉化日记_sorceress alive汉化使用方法:下载后解压,替换你安装OpenLiveWriter位置:C:\Users\Administrator\AppData\Local\OpenLiveWriter的app目录下的OpenLiveWriter.Localization.dll即可变成中文链接:https://pan.baidu.com/s/1Ja0-DcRihiEHtvsU1u5j2w?pwd=u7f8提取码:u7f8…

    2022年10月20日
    4
  • java转大数据的学习路线

    java转大数据的学习路线首先这个文章是转载的,留着后面基础再扎实一点之后开始学习,感谢原文的作者,写出了如此清晰的学习路线。原文作者文章链接:https://blog.csdn.net/gitchat/article/details/78341484【不要错过文末彩蛋】申明:本文旨在为普通程序员(Java程序员最佳)提供一个入门级别的大数据技术学习路径,不适用于大数据工程师的进阶学习,也不适用于零编程基础的同…

    2022年6月10日
    32

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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