Java Stream非官方教程|第二篇:流操作

1.流操作

java.util.stream.Stream中的Stream接口定義了很多操作。大致可以分爲兩大類。
看一段代碼
在這裏插入圖片描述
可以看到兩類操作
在這裏插入圖片描述

1.1 中間操作

filter、map、limit之類的中間操作會返回另一個流。中間操作一般都可以合併起來,在終端操作時一次性全部處理。

1.2 終端操作

終端操作會從流的流水線上生成結果。返回結果可以是任何值,比如list、integer,甚至是void,比如打印system.out.println或者開啓線程。

2.使用流

使用流,一般包括三件事

  • 一個數據源(如集合)來執行一個查詢
  • 一箇中間操作鏈,形成一條流的流水線
  • 一個終端操作,執行流水線,並生成結果

流的流水線背後的理念類似於構建器模式。在建造器模式中有一個調用鏈來設置一套配置(對流來說這就是一箇中間操作鏈),接着是調用build方法(對流來說就是終端操作)

3.總結

  • 流是“從支持數據處理操作的源 -> 生成的一系列元素”
  • 流通過內部迭代的方式:filter/map/sorted等操作被抽象掉了
  • 流操作:中間操作和終端操作
  • 中間操作會返回一個流,並可以連接在一起,但是不會產生結果
  • 終端操作會返回一個非流的值,並處理流水線返回結果
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章