java8中lambda的用法(map转list,list转map等等)
注意List 使用前需要做非空处理
1.以某个属性分组
Map<String,List<User>> map= userList.stream().collect(Collectors.groupingBy(User::getName));
2.获取集合中的某个属性转为集合
pictureList.stream().map(Picture::getSrc).collect(Collectors.toList());
3.根据集合中的某个属性进行升序重排
roomList.stream().sorted(Comparator.comparing(Room::getAvgPrice)).collect(Collectors.toList());
4.根据集合中的某个属性进行降序重排
roomList.stream().sorted(Comparator.comparing(Room::getAvgPrice).reversed()).collect(Collectors.toList());
5.集合中的属性去重
rpTags.stream().distinct().collect(Collectors.toList());
6.根据集合中的某个属性过滤并获取第一个
benefitList.stream().filter(benefit -> benefit.getId() == 1 || benefit.getId() == 20 || benefit.getId() == 26 || benefit.getId() == 89) .findFirst().orElse(null);
7.根据集合中的属性转换为键值对Map
getModule().stream().collect(Collectors.toMap(RateplanDO::getRateplanCode, rateplanDO -> rateplanDO));
8.获取集合中某个最大值的int数据
partnerCityHotelDOList.stream().mapToInt(PartnerCityHotelDO::getId).max().orElse(-1);
9.提取集合中对象的某个属性转化List
partnerCityHotelDOList.stream().map(PartnerCityHotelDO::getId).collect(Collectors.toList());
java8中lambda的用法(map转list,list转map等等)相关推荐
- Java8中Lambda表达式的10个例子
Java8中Lambda表达式的10个例子 例1 用Lambda表达式实现Runnable接口 Java代码 //Before Java 8: new Thread(new Runnable() ...
- java8中 Collectors.groupingBy用法
目录 1.数据准备: 2.分组 按照类目分组: 按照几个属性拼接分组: 根据不同条件分组 3.多级分组 4.按子组收集数据 求总数 求和 把收集器的结果转换为另一种类型 联合其他收集器 Collect ...
- python中lambda()的用法_python中lambda()的用法
在C++11和C#中都有匿名函数的存在.下面看看在python中匿名函数的使用. 1.lambda只是一个表达式,函数体比def简单很多. 2.lambda的主体是一个表达式,而不是一个代码块.仅仅能 ...
- Python中lambda详解(包括内置函数map、reduce、filter、sorted、max)
文章目录 一.lambda是什么? 1.lambda语法 2.语法详解 二.lambda的使用 1.定义 2.调用 3.替换 4.作返回值 三.lambda作参数 1.map函数 2.reduce函数 ...
- java8中 lambda表达式,stream操作
什么是lambda表达式 概念:Lambda 表达式(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda ab ...
- 提高Java表达能力!不落伍一起掌握Java8中Lambda表达式、函数式接口及方法构造器数组引用
文章目录 函数式接口概述 函数式接口示例 内置函数式接口 Lambda简述 Lambda语法 方法引用 构造器引用 数组引用 函数式接口概述 只包含一个抽象方法的接口,称为函数式接口. 可以通过 La ...
- java8中的Stream用法详解
项目github地址:bitcarmanlee easy-algorithm-interview-and-practice 欢迎大家star,留言,一起学习进步 1.为什么java8中加入Stream ...
- Java8中Stream的用法
Stream 是用函数式编程方式在集合类上进行复杂操作的工具,其集成了Java 8中的众多新特性之一的聚合操作,开发者可以更容易地使用Lambda表达式,并且更方便地实现对集合的查找.遍历.过滤以及常 ...
- python中lambda的用法
一.lambda函数也叫匿名函数,即,函数没有具体的名称.先来看一个最简单例子: def f(x): return x**2 print f(4) Python中使用lambda的话,写成这样 g = ...
- 详解C++中Lambda的用法
Lambda用法详细介绍 Lamdba是什么? Lambda表达式又称匿名函数,用于定义并创建匿名的函数对象,是C++11版本新增内容,可以简化代码的编程工作. Lambda的语法为: [captur ...
最新文章
- Linux命令执行顺序— ||和和; 比较
- 20155220 吴思其 2016-2017《java程序设计》第一周总结
- 容器环境自建数据库、中间件一键接入阿里云 Prometheus 监控
- 再现暴力裁员!患病员工被关小黑屋,摄像头监控,工作量超其他人!
- 实时“头发-面部皮肤”分割与人脸肤色分类
- 设置熄屏_自定义熄屏显示其实很简单
- ubuntu换系统下载路径源
- AdRotator,广告轮播 #1 -- 透过XML档来作设定。
- MySQLl优化【附带优化视频教程全套】
- 2021年上半年数据库系统工程师下午真题及答案解析
- vce 题库导入_PDF 题库转VCE 文件.docx
- 奋斗5年,从月薪3500到700万(不止谈赚钱,故事也很感人)
- GPS 校验和 代码_嵌入式Linux平台的GPS数据采集
- Raspberry 4B
- 淘宝前后端分离实践(PPT)
- 第12章 GUI编程与Tkinter相关组件介绍
- PL/0语言 词法分析
- C Primer Plus基础教程(1)— 初步认识C语言
- FFmpeg封装格式处理:视音频复用器(muxer)不同格式中数据有无bsf的差异-- Filter bitstream_filter实现格式转换:h264_mp4toannexb
- Linux目录和查看指令