Stream中的map
#map可以让一个对象A的流转换为宁外一种对象B的流(其实也是A对象元素组成的流)
1.对象转换为List集合
//若Eticket是一个对象,其中orderId是String类型
//eticket是前端传过来的值
List<String> list = eticket.stream().map(u->
u.getOrderId()).collect(Collectors.toList());
2.stream().filter()
#返回的流包含匹配结果的流的元素
//rq里面的etickets是数组
List<String> rq_eticket_no = Arrays.asList(rq.getEtickets());
List<ETicket> validTicket = etickets.stream().filter(x -> rq_eticket_no.contains(x.getTicketNo()))
.collect(Collectors.toList());
3.stream().allMatch()
#返回的是bool值
//承接上面的变量EticketStatus是一个枚举
validTicket.stream().allMatch(c -> c.getStatus() == ETicketStatus.applyRequest)
4.复杂结构
#bodys是一个Body类型的数组
rs.setBodys(etickets.stream().map(u -> {
RS_RefundTicket.Body body = new RS_RefundTicket.Body(u.getTicketNo(), ETicketStatus.unuse);
return body;
}).toArray(size -> new RS_RefundTicket.Body[size]));
Stream中的map的更多相关文章
- Java8 Stream 中 List 转 Map 问题总结
在使用 Java 的新特性 Collectors.toMap() 将 List 转换为 Map 时存在一些不容易发现的问题,这里总结一下备查. 空指针风险 java.lang.NullPointerE ...
- java8中的map和reduce
java8中的map和reduce 标签: java8函数式mapreduce 2014-06-19 19:14 10330人阅读 评论(4) 收藏 举报 分类: java(47) FP(2) ...
- JAVA8之lambda表达式具体解释,及stream中的lambda使用
前言: 本人也是学习lambda不久,可能有些地方描写叙述有误,还请大家谅解及指正! lambda表达式具体解释 一.问题 1.什么是lambda表达式? 2.lambda表达式用来干什么的? 3.l ...
- Java集合中的Map接口
jdk1.8.0_144 Map是Java三种集合中的一种位于java.util包中,Map作为一个接口存在定义了这种数据结构的一些基础操作,它的最终实现类有很多:HashMap.TreeMap.So ...
- java stream中Collectors的用法
目录 简介 Collectors.toList() Collectors.toSet() Collectors.toCollection() Collectors.toMap() Collectors ...
- java 8 Stream中操作类型和peek的使用
目录 简介 中间操作和终止操作 peek 结论 java 8 Stream中操作类型和peek的使用 简介 java 8 stream作为流式操作有两种操作类型,中间操作和终止操作.这两种有什么区别呢 ...
- 恕我直言你可能真的不会java第4篇:Stream管道流Map操作
一.回顾Stream管道流map的基础用法 最简单的需求:将集合中的每一个字符串,全部转换成大写! List<String> alpha = Arrays.asList("Mon ...
- Stream中的Peek操作
1.引言 如果你试图对流操作中的流水线进行调试, 了解stream流水线每个操作之前和操作之后的中间值, 该如何去做? 首先我们看一个例子, 使用forEach将流操作的结果打印出来. 1 /** 2 ...
- Stream中的Collector收集器原理
前言 Stream的基本操作因为平时工作中用得非常多(也能看到一些同事把Stream操作写得很丑陋),所以基本用法就不写文章记录了. 之所以能把Stream的操作写得很丑陋,完全是因为Stream底层 ...
随机推荐
- Java(四)输出和输入函数
介绍一下Java里简单常用的输入输出方法. Java的输出函数很简单,直接调用System类的out对象的print函数即可. 代码: System.out.print(a);//输出变量a的值 Sy ...
- 【剑指Offer】60、按之字形顺序打印二叉树
题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推. 题解:BFS 主要的方法与BFS写法没什么区 ...
- 大json直接序列化成dataset
rtnDs= JsonConvert.DeserializeObject<DataSet>(strBuff);
- 华为高斯 GaussDB 100 OLTP 单机在 RHEL 7.6 上的安装
目录 你需要知道的 操作系统安装 GaussDB 100 安装 环境设置 创建用户组/用户/文件夹 软件上传/解压/安装 启动数据库 DataStudio 连接 服务器环境设置 DataStudio ...
- 51Nod 1344 走格子 (贪心)
有编号1-n的n个格子,机器人从1号格子顺序向后走,一直走到n号格子,并需要从n号格子走出去.机器人有一个初始能量,每个格子对应一个整数A[i],表示这个格子的能量值.如果A[i] > 0,机器 ...
- Windows下MongoDB的配置及其远程连接
基本操作MongoDB的基本安装https://blog.csdn.net/heshushun/article/details/77776706启动和配置MongoDB服务参考博客https://bl ...
- [USACO10MAR] 伟大的奶牛聚集 - 树形dp
每个点有重数,求到所有点距离最小的点 就是魔改的重心了 #include <bits/stdc++.h> using namespace std; #define int long lon ...
- 如来十三掌-关于不断解密的密码学,佛语解密,rot-13(根据13掌),base64
得到MzkuM3gvMUAwnzuvn3cgozMlMTuvqzAenJchMUAeqzWenzEmLJW9 然后尝试嘛 base64不太行 那根据十三掌??rot-13 得到ZmxhZ3tiZHNj ...
- vue学习指南:第十二篇(详细) - Vue的 路由 第二篇 ( 路由按需加载(懒加载))
各位朋友 因 最近工作繁忙,小编停更了一段时间,快过年了,小编祝愿 大家 事业有成 学业有成 快乐健康 2020开心过好每一天.从今天开始 我会抽时间把 Vue 的知识点补充完整,以及后期会带给大家更 ...
- QT安装和vs2015使用
下载Qt5.7.0安装包(qt-windows-opensource)与Qt插件(Visual Studio Add-in) QT软件下载地址: http://download.qt.io/archi ...