zoukankan      html  css  js  c++  java
  • java8 peek

    这样不会有任何的输出;Stream.of("one", "two", "three", "four").peek(e -> System.out.println(e));
    这样输出:Stream.of("one", "two", "three", "four").peek(e -> System.out.println(e)).collect(Collectors.toList())

    one
    two
    three
    four

    原因:

    java8流中所有的操作都是蓄而不发的,只有执行foreach,collect等终结操作时,流的操作才会执行。
    而且流内部会自动进行优化,只要得到想要的解决就不会继续进行计算了。
    peek是个中间操作,它提供了一种对流中所有元素操作的方法,而不会把这个流消费掉(foreach会把流消费掉),然后你可以继续对流进行其他操作。

  • 相关阅读:
    设计模式总结
    centos7.5 安装python3.7
    搭建yum软件源
    centos安装gitbook
    编译技术
    samba安装
    docker命令
    shell基础知识
    随笔
    虚拟机字节码执行引擎(三)
  • 原文地址:https://www.cnblogs.com/wangjing666/p/10000741.html
Copyright © 2011-2022 走看看