Java8-Stream-终止操作-查找与匹配
2019独角兽企业重金招聘Python工程师标准>>>
终止操作是流操作的最后一步,只有当终止操作出现的时候,其他中间操作才会真正被执行。有如下一些终止操作:
该部分属于查找与匹配
allMatch(Predicate p) :检查是否匹配所有元素
anyMatch(Predicate p) :检查是否至少匹配一个元素
noneMatch(Predicate p) :检查是否没有匹配所有元素
findFirst() :返回第一个元素
findAny() :返回当前流中的任意元素
该部分属于统计
count() :返回流中元素总数
max(Comparator c) :返回流中最大值
min(Comparator c) :返回流中最小值
forEach(Consumer c) 内部迭代(使用 Collection 接口需要用户去做迭代,称为外部迭代。相反,Stream API 使用内部迭代——它帮你把迭代做了)
终端操作会从流的流水线生成结果。其结果可以是任何不是流的值,例如:List、Integer,甚至是 void 。
拿count举例:
@Testpublic void test4() {//flatMap类型:将为每个元素创建一个流,并最终合并成一个流List<List> lp = new ArrayList();for(int i=0;i<3;i++) {List<Double> lc = new ArrayList();for(int j=0;j<10;j++) {lc.add(Math.random());}lp.add(lc);}System.out.println(lp.stream().flatMap((x)->x.stream()).count());//lp.stream().flatMap((x)->x.stream()).forEach(System.out::println);}
转载于:https://my.oschina.net/u/3049601/blog/1623572
Java8-Stream-终止操作-查找与匹配相关推荐
- Java基础学习总结(132)——Java8 Stream流操作学习总结
传统的数据处理都是用循环来解决,而不是像搜索数据库那样有具体的搜索语句,而Java8的Stream提供了很好的方案,往往一行就搞定了,而且Stream还可以链式操作,一行代码实现多个循环的功能,代码风 ...
- Java8 Stream流操作在用户系统中的妙用
在做目前这个项目的时候,发现以前有一个筛选的需求,老程序员是这么做的,先请求Http服务器得到一长串json数据,大概用A4纸打了40多页那么多,然后将这些对象写入到sqlite数据库中,再用数据库查 ...
- Java8 Stream reduce操作
Reduce,顾名思义为减少的意思,就是根据指定的计算模型将Stream中的值计算得到一个最终结果.在之前的一篇文章Java8函数式编程中简单介绍,Stream的count.min 和max方法底层都 ...
- Java8——Stream流操作List排序_List集合中每个对象元素按时间顺序排序
一个学生类的实体类 @Data public class Student {private Long id;private String name;private int age;private Do ...
- java8 stream流操作集合交集,差集,并集,过滤,分组,去重,排序,聚合等
测试对象 public class Person {private String name;private Integer age;private Integer weight;public Pers ...
- Java8 Stream的用法
一.Stream的操作步骤: 1.创建Stream 从一个数据源,如集合.数组中获取流. 2.中间操作 一个操作的中间链,对数据源的数据进行操作. 3.终止操作 一个终止操作,执行中间操作链 ...
- 玩转 Java8 Stream,常用方法大合集
点击关注公众号,实用技术文章及时了解 来源:blog.csdn.net/y_k_y/article/details/84633001 一.概述 Stream 是 Java8 中处理集合的关键抽象概念, ...
- Java8 Stream:两万字博文教你玩转集合的筛选、归约、分组、聚合
目录 一.Stream概述 二.Stream 的创建 三.Stream 的中间操作 3.1.筛选(filter/distinct) 3.2.切片(limit/skip) 3.3.映射(map/mapT ...
- 玩转 Java8 Stream 流,常用方法,详细用法大合集!
点击上方"Java精选",选择"设为星标" 别问别人为什么,多问自己凭什么! 下方有惊喜留言必回,有问必答! 每一天进步一点点,是成功的开始... 一.概述 S ...
最新文章
- java值参_Java陷阱之慎用入参做返回值详解
- linux 串口驱动 atmel_set_mctrl何时调用,linux uart serial使用驱动分析
- 20分钟吃掉Linux常用命令40式
- [云炬ThinkPython阅读笔记]第一章 程序之道
- 三星全速进军物联网 所有产品都将内置互联功能
- 同时打开多个VC工程
- 无需埋点的移动数据分析平台GrowingIO V1.0
- 【AI面试题】One-hot的作用,为什么不直接使用数字作为表示
- Java lambda list转换map时,把多个参数拼接作为key
- 使用Mysql执行事务实现模拟银行转账功能
- [转载]用户(User)和用户组(Grou…
- c 语言文本文件判断是否到达结尾的问题
- 数学建模——线性规划
- 401. 二进制手表
- 浅谈Redis延迟测试方法
- 后台管理系统纯前端模板
- ASUS华硕笔记本FN快捷键无法调节屏幕亮度
- EKL日志分析平台-kibana数据可视化
- 无法登录苹果开发者_苹果企业开发者账号怎么申请?失败的原因是什么
- 服务器托管的必要性(下)
热门文章
- ios::ate ios::app ios::out ios::in ios::trunc ios::binary(组合总结)
- 概率论-2.7 分布的其他特征函数
- 关于优酷开放SDK之setOnCurrentPositionUpdateListener
- Indetifier
- like ,order 使用索引
- rmi of spring
- ECMAScript 对象类型
- 解决 锁定文件失败 打不开磁盘“D:\ubuntu\Ubuntu 64 位.vmdk”或它所依赖的某个快照磁盘。 模块 Disk”启动失败...
- windows快捷键命令汇总整理
- 第 3 章 共享程序集和强命名程序集