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-终止操作-查找与匹配相关推荐

  1. Java基础学习总结(132)——Java8 Stream流操作学习总结

    传统的数据处理都是用循环来解决,而不是像搜索数据库那样有具体的搜索语句,而Java8的Stream提供了很好的方案,往往一行就搞定了,而且Stream还可以链式操作,一行代码实现多个循环的功能,代码风 ...

  2. Java8 Stream流操作在用户系统中的妙用

    在做目前这个项目的时候,发现以前有一个筛选的需求,老程序员是这么做的,先请求Http服务器得到一长串json数据,大概用A4纸打了40多页那么多,然后将这些对象写入到sqlite数据库中,再用数据库查 ...

  3. Java8 Stream reduce操作

    Reduce,顾名思义为减少的意思,就是根据指定的计算模型将Stream中的值计算得到一个最终结果.在之前的一篇文章Java8函数式编程中简单介绍,Stream的count.min 和max方法底层都 ...

  4. Java8——Stream流操作List排序_List集合中每个对象元素按时间顺序排序

    一个学生类的实体类 @Data public class Student {private Long id;private String name;private int age;private Do ...

  5. java8 stream流操作集合交集,差集,并集,过滤,分组,去重,排序,聚合等

    测试对象 public class Person {private String name;private Integer age;private Integer weight;public Pers ...

  6. Java8 Stream的用法

    一.Stream的操作步骤: 1.创建Stream  从一个数据源,如集合.数组中获取流.  2.中间操作  一个操作的中间链,对数据源的数据进行操作.  3.终止操作  一个终止操作,执行中间操作链 ...

  7. 玩转 Java8 Stream,常用方法大合集

    点击关注公众号,实用技术文章及时了解 来源:blog.csdn.net/y_k_y/article/details/84633001 一.概述 Stream 是 Java8 中处理集合的关键抽象概念, ...

  8. Java8 Stream:两万字博文教你玩转集合的筛选、归约、分组、聚合

    目录 一.Stream概述 二.Stream 的创建 三.Stream 的中间操作 3.1.筛选(filter/distinct) 3.2.切片(limit/skip) 3.3.映射(map/mapT ...

  9. 玩转 Java8 Stream 流,常用方法,详细用法大合集!

    点击上方"Java精选",选择"设为星标" 别问别人为什么,多问自己凭什么! 下方有惊喜留言必回,有问必答! 每一天进步一点点,是成功的开始... 一.概述 S ...

最新文章

  1. java值参_Java陷阱之慎用入参做返回值详解
  2. linux 串口驱动 atmel_set_mctrl何时调用,linux uart serial使用驱动分析
  3. 20分钟吃掉Linux常用命令40式
  4. [云炬ThinkPython阅读笔记]第一章 程序之道
  5. 三星全速进军物联网 所有产品都将内置互联功能
  6. 同时打开多个VC工程
  7. 无需埋点的移动数据分析平台GrowingIO V1.0
  8. 【AI面试题】One-hot的作用,为什么不直接使用数字作为表示
  9. Java lambda list转换map时,把多个参数拼接作为key
  10. 使用Mysql执行事务实现模拟银行转账功能
  11. [转载]用户(User)和用户组(Grou…
  12. c 语言文本文件判断是否到达结尾的问题
  13. 数学建模——线性规划
  14. 401. 二进制手表
  15. 浅谈Redis延迟测试方法
  16. 后台管理系统纯前端模板
  17. ASUS华硕笔记本FN快捷键无法调节屏幕亮度
  18. EKL日志分析平台-kibana数据可视化
  19. 无法登录苹果开发者_苹果企业开发者账号怎么申请?失败的原因是什么
  20. 服务器托管的必要性(下)

热门文章

  1. ios::ate ios::app ios::out ios::in ios::trunc ios::binary(组合总结)
  2. 概率论-2.7 分布的其他特征函数
  3. 关于优酷开放SDK之setOnCurrentPositionUpdateListener
  4. Indetifier
  5. like ,order 使用索引
  6. rmi of spring
  7. ECMAScript 对象类型
  8. 解决 锁定文件失败 打不开磁盘“D:\ubuntu\Ubuntu 64 位.vmdk”或它所依赖的某个快照磁盘。 模块 Disk”启动失败...
  9. windows快捷键命令汇总整理
  10. 第 3 章 共享程序集和强命名程序集