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会把流消费掉),然后你可以继续对流进行其他操作。

  • 相关阅读:
    Linux 命令
    g++/gcc
    emacs lisp
    vim 快捷键
    emacs快捷键
    Valgrind 例子
    Valgrind
    gprof
    cppcheck
    gdb常用命令
  • 原文地址:https://www.cnblogs.com/wangjing666/p/10000741.html
Copyright © 2011-2022 走看看