java stream 8 常用的操作集合 求和 排序 过滤 拿出对象元素组成集合
举个例子拿一个教师给学生开家长会Java实体
解释
stream 流操作集合建立在内存之上非常的快
以下列举 常用的操作方法
@Data
public class OpenClass {private Integer id;//idprivate Integer schoolId;//学校idprivate Integer classesId;//班级idprivate String className;//班级姓名private Integer teacherId;//教师Idprivate String teacherName;//教师姓名private Date beginClass;private Integer iOrder;private Integer shouldArrive;//应到人数private Integer actualArrive;//实到人数
}List<OpenClass> openClassLis = new ArrayList<>();//假设这是很多条数据的集合
//例子1 过滤出应道人数大于10的班级List<OpenClass> result = openClassLis.stream().filter(openClass -> openClass.getShouldArrive() > 0).collect(Collectors.toList());//例子2 排序所有班级应到人数(倒序)List<OpenClass> result = openClassLis.stream().sorted(Comparator.comparing(OpenClass::getShouldArrive)).collect(Collectors.toList());(List<OpenClass> result = openClassLis.stream().sorted(Comparator.comparing(OpenClass::getShouldArrive).reversed()).collect(Collectors.toList());)//例子3 筛选出所有的教师名称
List<String> result = openClassLis.stream().map(OpenClass::getTeacherName).collect(Collectors.toList());//例子4 求出所有的应到人数之和
Integer reduce = openClassLis.stream().map(OpenClass::getShouldArrive).reduce(0, (a, b) -> a + b);//例子5 打印每次家长会的详情openClassList.stream().forEach(System.out::print);
java stream 8 常用的操作集合 求和 排序 过滤 拿出对象元素组成集合相关推荐
- JAVA Stream原理和常见操作
1.Stream原理 Stream是JAVA8开始的新的用法.Stream本意为流,Stream也确实如流一样,给操作带来了方便. Stream的表现是: 1)提供一个特定类型的队列: 2)提供一系列 ...
- Java遍历Map集合的第二种方法Entry对象遍历Map集合内元素
键值对方式:即通过集合中每个键值对(Entry)对象,获取键值对(Entry)对象中的键与值. 操作步骤: 获取Map集合中,所有的键值对(Entry)对象,以Set集合形式返回.方法提示:entry ...
- java 合并流_Java Stream 流实现合并操作示例
本文实例讲述了Java Stream 流实现合并操作.分享给大家供大家参考,具体如下: 1. 前言 Java Stream Api提供了很多有用的 Api 让我们很方便将集合或者多个同类型的元素转换为 ...
- JAVA SE学习day_12:集合的排序、队列、栈结构
一.集合的排序 1.1 集合的排序 集合的工具类java.util.Collections提供了一个静态方法sort,可以对List集合 进行自然排序,即:从小到大 除了自然排序之外还有反转.乱序方法 ...
- java Stream 流
java Stream 流 Stream 流 流的创建 流的转化 Optianal 流的计算 Stream 流 1. Stream的定义 来自数据源的支持聚合操作的元素序列. 即一个流对外提供接口,接 ...
- 【java笔记】java中的常用容器
本文参考了知乎作者"Hello浩辰"的Java容器详解Ⅰ--概述和菜鸟教程的相关文章. 一.常用容器 java容器分为两大部分:Collection和Map.Collection是 ...
- [源码解析] 当 Java Stream 遇见 Flink
[源码解析] 当 Java Stream 遇见 Flink 文章目录 [源码解析] 当 Java Stream 遇见 Flink 0x00 摘要 0x01 领域 1.1 Flink 1.2 Java ...
- java对日期进行排序_Java对日期时间值的集合进行排序
我正在使用notes.jar lotus notes api来提取电子邮件的日期和时间.当我将它们添加到集合中时,如果像这样添加它们: Vector times = doc.getItemValueD ...
- Java8集合List排序、筛选、求和、求最大值、平均值、List转Map
Java8集合List排序.筛选 1. List 元素有序 元素可重复 1.1 ArrayList 动态数组实现 查询快 增删慢(末尾处也快) 1.2 LinkedList 链表实现 查询慢 增删快 ...
最新文章
- 自定义控件的构建(5)
- 读书笔记《锋利的jQuery》
- JSP中文乱码问题终极解决方案
- MobileIMSDK怎样修改服务端核心jar包的源码并替换掉Java服务端的jar包
- html文件怎么改为php,请问你们怎么将html的文件的内容改变为php
- 产品经理被老板打住院
- 面试官:你给我画一下秒杀系统的架构图!
- 管家婆辉煌2虚拟服务器,管家婆辉煌:三步轻松完成软狗组网!
- 9.4SAS软件入门
- 模拟电子技术 PN结的形成与工作原理 个人笔记
- cad插入块_CAD图块全攻略:别羡慕我下班早,我的CAD软件会开挂!
- 三菱FX3UFX2NFX1N PLC 模拟器模拟通信功能,模拟PLC实体,FX3U仿真器,仿真PLC服务器
- Java爬携程_Java数据爬取——爬取携程酒店数据(二)
- 单片机函数:_crol_和_cror_
- PTA创建视图,包含商品打折前后的价格信息
- 使用cropper插件实现图片的裁剪和预览
- 一步一步玩转树莓派~
- 计算机编程平方怎么按,电脑键盘上怎么打平方,次方之类的
- 实验四 基于PPTP的远程VPN实现【网络安全】
- Flume【问题记录 01】【at org.apache.flume.node.Application.main(Application.java:xxx) 类问题整理+其他类型问题总结】【避坑指南】