引言

实际开发中,我们常要对集合进行转换,一个forEach()让这个变得繁杂,用了Lambda,直接一切简单了

1. List转Map

直接上代码

 List<RedRecordDto> records = redRecordService.getRecords();//List<RedRecordDto>根据日期合成--------------->Map<属性,对象>Map<Date, RedRecordDto> map = records.stream().collect(Collectors.toMap((RedRecordDto::getCreateTime), RedRecordDto -> RedRecordDto));//自定义key的转为map--------------->Map<自定义key,对象>Map<String, GrayWhiteDo> batchUpdateGrayWhiteVoMap = whiteInfoList.stream().collect(Collectors.toMap(k->grayConfig.getRedisGrayWhiteKeyPrefix()+k.getMsisdn(), grayWhiteDo->grayWhiteDo));//List<RedRecordDto>根据日期分组--------------->Map<属性,List<对象>>Map<String, List<RedRecordDto>> m = records.stream().collect(Collectors.groupingBy(r->(r.getCreateTime().toString())));

JDK1.8的Lambda表达式使用(一)相关推荐

  1. jdk1.8之lambda表达式

    2019独角兽企业重金招聘Python工程师标准>>> 1.Lambda Lambda表达式的本质只是一个"语法糖",由编译器推断并帮你转换包装为常规的代码,因此 ...

  2. Jdk1.8新特性(二)——lambda表达式(参数列表)-{}和函数式接口@FunctionalInterface

    Jdk1.8新增lambda表达式是为了简化代码,主要用于简化匿名实现类,为其提供一种更加简洁的写法.Lambda表达式在swift语言中被称为代码块,lambda表达式可以认为是一种特殊的接口,是匿 ...

  3. lambda表达式——写多线程

    JDK1.8 中Lambda 表达式的出现,基本可以取替原来的匿名类实现多线程的方式.下面列举常用的常用的三种情况. 一.普通开启异步线程 new Thread(() -> System.out ...

  4. jdk1.8新特性 Lambda表达式和Stream集合操作(详细)

    Lambda表达式 ① 语法 lambda表达式 ,是JDK1.8新增的特性 使用新的运算符 -> (转到.称为) lambda表达式的组成 第1部分: (参数) 第2部分: -> 第3部 ...

  5. 三、jdk1.8新特新Lambda表达式方法引用

    前言 在之前我们接触了JDK1.8引入的新特新lambda表达式没在某种程度上,它可以简化我们的代码,帮助我们快速的编写代码,但在这其中我们之前的编写方式并不是lambda表达式最简洁的方式,而在头屑 ...

  6. 接口(jdk1.8及之后) 单例模式(饿汉式,懒汉式) 静态代理模式 简单工厂模式 匿名内部类 lambda表达式

    接口: jdk1.8及之后新增了2种可以定义存在方法体的方法: 默认方法 (default关键字修饰的方法 ) 使用:通过实现类对象使用 静态方法 (掌握) 使用:通过接口名去调用 目前接口中: 必须 ...

  7. JDK1.8新特性之Lambda表达式+Stream流+函数式接口

    一.Lambda表达式 Lambda表达式,是JDK1.8引入的一种语法,这种语法可以对匿名内部类的写法,进行简写. 1.快速入门 package org.westos.demo2;import ja ...

  8. jdk1.8 Lambda表达式的使用

    参考博文 https://www.cnblogs.com/franson-2016/p/5593080.html Lambda表达式的语法 基本语法: (parameters) -> expre ...

  9. JDK1.8新特性:lambda表达式

    一.类定义 package com.xxx;import java.math.BigDecimal;public class Student {private String name;private ...

  10. JDK1.8新特性Lambda表达式入门

    摘要:此篇文章主要介绍 Java8 Lambda 表达式产生的背景和用法,以及 Lambda 表达式与匿名类的不同等.本文系 OneAPM 工程师编译整理. Java 是一流的面向对象语言,除了部分简 ...

最新文章

  1. Semplice Linux 3.0.0 发布
  2. 如何向通过TCP socket给服务器端发送的数据里注明自己的客户端地址
  3. 转:如何在 LoadRunner 脚本中做关联 (Correlation)
  4. 容器云常见安全威胁与防范 | 技术干货
  5. c语言键盘按f1显示f1,windows10键盘f1变成功能键的两种解决方法
  6. 高清电脑手机壁纸任你选,每天不重样!
  7. vue 数组转集合_思想实验:如何在Vue中使localStorage具有响应式?
  8. Linux下安装配置Redis
  9. VS2010用Winform编写 Excel程序
  10. C#中引用第三方ocx控件引发的问题以及解决办法
  11. 软件项目管理 2.3.项目章程
  12. Visio 2010工具产品密钥
  13. spss和matlab主成分符号,主成分分析及MATLAB和SPSS求解整理
  14. 机器学习之密度聚类(DBSCAN)
  15. BiShop 模式识别与机器学习
  16. java之StringBuilder和关于数组怎么扩容
  17. “客户机操作系统已将 CD-ROM 门锁定,并且可能正在使用 CD-ROM,这可能会导致客户机...” 报错解决办法
  18. 如何将Ant Design Icon本地化
  19. android最好的画图笔记app,盘点:好用的笔记类APP有哪些?
  20. 头条号小程序制作分享

热门文章

  1. PHP使用Socket发送字节流
  2. 计算机系统英语作文结尾万能句子,简单英语作文万能句子 开头结尾套用句子...
  3. 数据治理成功要素篇1:数据战略管理
  4. CSDN博文精选:最受欢迎的系列专栏博客推荐
  5. 【常用0x000000类型颜色代码表】
  6. 实用小技巧之电脑如何滚动截屏/截取长图
  7. 正态分布及其概率计算
  8. php文字如何排版,文字如何实现完美UI?文本排版设计告诉你
  9. 如何打造一个能自动回复的钉钉机器人
  10. 织梦后台登陆不上提示验证码不正确