Lambda中间操作flatMap
flatMap
map只能把一个对象转换成另一个对象来作为流中的元素。而flatMap可以把一个对象转换成多个对象作为流中的元素。
例一:
打印所有书籍的名字。要求对重复的元素进行去重。
// 打印所有书籍的名字。要求对重复的元素进行去重。List<Author> authors = getAuthors();authors.stream().flatMap(author -> author.getBooks().stream()).distinct().forEach(book -> System.out.println(book.getName()));
例二:
打印现有数据的所有分类。要求对分类进行去重。不能出现这种格式:哲学,爱情
// 打印现有数据的所有分类。要求对分类进行去重。不能出现这种格式:哲学,爱情 爱情List<Author> authors = getAuthors();authors.stream().flatMap(author -> author.getBooks().stream()).distinct().flatMap(book -> Arrays.stream(book.getCategory().split(","))).distinct().forEach(category-> System.out.println(category));
Lambda中间操作flatMap相关推荐
- lambda在python_在Python中使用lambda高效操作列表的教程
介绍 lambda Python用于支持将函数赋值给变量的一个操作符 默认是返回的,所以不用再加return关键字,不然会报错 result = lambda x: x * x result(2) # ...
- [进阶] list 过滤 stream 的lambda进阶操作, 这一篇就够了
目录 1. list转化map基本操作 id最常用方式: -> 01 key-value值形式: -> 02 id-> 对象本身 -> 03 id-> 对象本身的 la ...
- JDK8:Lambda表达式操作List集合
JDK8的流对list的处理提供了很大的方便,特别是做报表的时候才能真正体现出来这个功能的强大:结合日常使用过程,有两个体会:一个是减少了数据库连接,最忌讳在循环中进行数据查询,特别是嵌套多层循环的时 ...
- java 8 lambda·List操作
常见的几个list 匿名函数的使用# 注意List 使用前需要做非空处理 1.以某个属性分组 Map<String,List<User>> map= userList.stre ...
- Util应用程序框架公共操作类(八):Lambda表达式公共操作类(二)
前面介绍了查询的基础扩展,下面准备给大家介绍一些有用的查询封装手法,比如对日期范围查询,数值范围查询的封装等,为了支持这些功能,需要增强公共操作类. Lambda表达式公共操作类,我在前面已经简单介绍 ...
- 面试官系统精讲Java源码及大厂真题 - 42 常用的 Lambda 表达式使用场景解析和应用
42 常用的 Lambda 表达式使用场景解析和应用 引导语 我们日常工作中,Lambda 使用比较多的场景,就是 List 或 Map 下的 Lambda 流操作,往往几行代码可以帮助我们实现多层 ...
- 03-Mono Flux操作
上一节主要介绍了如何基于Mono和Flux构建一个数据流,Mono是Flux的特例,但大部分API 都是一致的所以重点讲的是Flux.本章将讲Flux和Mono的操作符,如 转换.过滤.异常处理.日志 ...
- Stream流:基本API操作详细笔记
目录 1.Stream流基础介绍 1.1 Stream流有一些特性: 1.2 流的操作可以分为两种类型: 2.创建流 2.1 串行流: 2.2 并行流 3.操作流 3.1 过滤 3.2 映射 3.3 ...
- 【Java】Java函数式编程以及流的操作
文章目录 大纲 lambda表达式 一般内部类 局部内部类 匿名内部类 基于函数式接口的lambda表达式 JDK8中自带的函数式接口 Predicate判断 Consumer消费 Supplier供 ...
最新文章
- 全文搜索引擎选 ElasticSearch 还是 Solr?
- 程序员面试拼多多,来看看这些面试题你掌握的有多少呢?
- MySQL创建索引(CREATE INDEX)
- request.getRequestDispatcher()的两个方法forward()/include()!!!
- 化工原理少学时答案解析_化工原理 少学时 思考题答案
- 实现数据库的增删改查
- mysqli 扩展_MySQLi的优势
- ios13苹方字体ttf_字体 | iOS1013 SF Compact Rounded 英文 By alex
- C语言课后习题(20)
- ICLR'22 | 审稿结果统计速览
- 工程测量(平面高程控制网)
- 什么是APS高级计划排程系统?APS计划排产有什么功能和作用?
- 高仿富途牛牛-组件化(二)-磁力吸附
- Windows之cmd命令检查网络
- 0.91英寸和0.96英寸OLED驱动区别
- 百度图片搜索搜出大量色情图片,原因不明
- 美国各州人口数据分析
- 用Arduino制作红外线循迹自动机器人
- SciTE Script Editor 解决中文乱码
- 有方便记笔记的手机便签app吗?
热门文章
- 超详细shell脚本编程快速入门
- win7 64位 Python3.5.1 scipy,numpy, Gensim主题模型包安装
- java 整数字符串转成财务表示形态
- 揭秘!在线称重设备是如何实现物品称重分选的
- 南昌航空大学计算机网络,南昌航空大学计算机网络试题库
- 怎样做到微信支付二维码链接,单独跳转?
- 正念诱导的内源性θ刺激引起自我超越与抑制成瘾行为
- java preference xml,java-将PreferenceScreen添加到linearlayout
- 使用uni-app自带的uniicons图标字库
- 复制目录下面所有的文件名及attrib命令使用