一、函數式編程/lambda編程
接口 | 輸入參數 | 返回類型 | 說明 |
---|---|---|---|
Predicate<T> | T | boolean | 斷言 |
Consumer<T> | T | / | 消費一個數據 |
Function<R,R> | T | R | 輸入T輸出R的函數 |
Supplier<T> | / | T | 提供一個數據 |
UnaryOperator<T> | T | T | 一元函數(輸入輸出類型相同) |
BiFunction<T,U,R> | (R,U) | R | 2個輸入的函數 |
BinaryOperator<T> | (T,T) | T | 二元函數(輸入輸出類型相同) |
二、Stream流編程 - 建立數組
相關方法 | |
---|---|
集合 | Collection.stream/parallelStream |
數組 | Arrays.stream |
數字Stream | InStream/LongStream. range/rangeCloseddom Random.ints/longs/doubles函數式編程 |
本身建立 | Stream.generate/iterate |
三、Stream流編程 - 中間操做函數
相關方法 | |
---|---|
無狀態操做 | map/ mapToXxxspa flatMap/ flatMapToXxx接口 filterip peekci unorderedit |
有狀態操做 | distinct sorted limit / skip |
四、Stream流編程 - 終止操做
相關方法 | |
---|---|
非短路操做 | forEach / forEachOrdered collect / toArray reduce min / max / count |
短路操做 | findFirst / findAny allMatch / anyMatch / noneMatch |