
| Operation | Stateless | Style | Return Type | Parameter | Function Descriptor | Description |
|---|---|---|---|---|---|---|
| filter | Filtering | Stream | Predicate | T -> boolean | ||
| distinct | stateful, unbound | Filtering | Stream | |||
| sorted | stateful, unbound | Sorting | Stream | Comparator | (T, T) -> int | |
| takeWhile | Slicing | Stream | Predicate | T -> boolean | limit | |
| dropWhile | Slicing | Stream | Predicate | T -> boolean | skip | |
| limit | stateful, bound | Slicing | Stream | long | short circuit | |
| skip | stateful, bound | Slicing | Stream | long | ||
| map | Mapping | Stream | Function<T, R> | T -> R | ||
| flatMap | Mapping | Stream | Function<T, Stream> | T -> Stream |
| Operation | Stateless | Style | Return Type | Parameter | Function Descriptor | Description |
|---|---|---|---|---|---|---|
| anyMatch | Matching | boolean | Predicate | T -> boolean | short circuit | |
| allMatch | Matching | boolean | Predicate | T -> boolean | short circuit | |
| noneMatch | Matching | boolean | Predicate | T -> boolean | short circuit | |
| findAny | Finding | Optional | ||||
| findFirst | Finding | Optional | ||||
| forEach | Iteration | void | Consumer | T -> void | ||
| collect | Reduce | R | Collector<T, A, R> | Supplier supplier BiConsumer<A, T> accumulator BinaryOperator combiner Function<A, R> finisher | ||
| reduce | stateful, bound | Reduce | Optional | BinaryOperator | (T, T) -> T | |
| count | Reduce | long |
| Operation | Operation Type | Style | Return Type | Parameter | Function Descriptor | Description |
|---|---|---|---|---|---|---|
| filter | intermediate | Filtering | Stream | Predicate | T -> boolean | |
| distinct | intermediate | Filtering | Stream |
| Operation | Operation Type | Style | Return Type | Parameter | Function Descriptor | Description |
|---|---|---|---|---|---|---|
| takeWhile | intermediate | Slicing | Stream | Predicate | T -> boolean | limit |
| dropWhile | intermediate | Slicing | Stream | Predicate | T -> boolean | skip |
| limit | intermediate | Slicing | Stream | long | short circuit | |
| skip | intermediate | Slicing | Stream | long |
| Operation | Operation Type | Style | Return Type | Parameter | Function Descriptor | Description |
|---|---|---|---|---|---|---|
| map | intermediate | Mapping | Stream | Function<T, R> | T -> R | |
| flatMap | intermediate | Mapping | Stream | Function<T, R> | T -> Stream |
| Operation | Operation Type | Style | Return Type | Parameter | Function Descriptor | Description |
|---|---|---|---|---|---|---|
| anyMatch | terminal | Matching | boolean | Predicate | T -> boolean | short circuit |
| allMatch | terminal | Matching | boolean | Predicate | T -> boolean | short circuit |
| noneMatch | terminal | Matching | boolean | Predicate | T -> boolean | short circuit |
| Operation | Operation Type | Style | Return Type | Parameter | Function Descriptor | Description |
|---|---|---|---|---|---|---|
| findAny | terminal | Finding | Optional | Short Circuit | ||
| findFirst | terminal | Finding | Optional | Short Circuit |
| Operation | Operation Type | Style | Return Type | Parameter | Function Descriptor | Description |
|---|---|---|---|---|---|---|
| forEach | terminal | Iteration | void | Consumer | T -> void | |
| collect | terminal | Reduce | R | Collector<T, A, R> | Supplier supplier BiConsumer<A, T> accumulator BinaryOperator combiner Function<A, R> finisher | |
| reduce | termianl | Reduce | Optional | BinaryOperator | (T, T) -> T | |
| count | terminal | Reduce | long |
interface Collector<T, A, R> {
Supplier<A> supplier();
BiConsumer<A, T> accumulator();
BinaryOperator<A> combiner();
Function<A, R> finisher();
Set<Characteristics> characteristics();
}
| Static Method | Collector Type (Return Type) | Collect Type (Reduce Type) | Parameter Types |
|---|---|---|---|
| toList | Collector<T, ?, List> | List | |
| toSet | Collector<T, ?, Set> | Set | |
| toCollection | Collector<T, ?, C> | C extends Collection | Supplier |
| joining | Collector<CharSequence, ?, String> | String | CharSequence delimiter (optional) CharSequence prefix (optional) CharSequence suffix (optional) |
| counting | Collector<T, ?, Long> | Long | |
| summingInt summingLong summingDouble | Collector<T, ?, Integer> Collector<T, ?, Long> Collector<T, ?, Double> | Integer Long Double | ToIntFunction<? super T> ToLongFunction<? super T> ToDoubleFunction<? super T> |
| averagingInt averagingLong averagingDouble | Collector<T, ?, Double> Collector<T, ?, Double> Collector<T, ?, Double> | Double Double Double | ToIntFunction<? super T> ToLongFunction<? super T> ToDoubleFunction<? super T> |
| summarizingInt summarizingLong summarizingDouble | Collector<T, ?, IntSummaryStatistics> Collector<T, ?, LongSummaryStatistics> Collector<T, ?, DoubleSummaryStatistics> | IntSummaryStatistics LongSummaryStatistics DoubleSummaryStatistics | ToIntFunction<? super T> ToLongFunction<? super T> ToDoubleFunction<? super T> |
| maxBy | Collector<T, ?, Optional> | Optional | Comparator<? super T> |
| minBy | Collector<T, ?, Optional> | Optional | Comparator<? super T> |
| mapping | Collector<T, ?, R> | R | Function<? super T, ? extends U> mapper Collector<? super U, A, R> downstream |
| flatMapping | Collector<T, ?, R> | R | Function<? super T, ? extends Stream<? extends U>> mapper Collector<? super U, A, R> downstream |
| filtering | Collector<T, ?, R> | R | Predicate<? super T> predicate Collector<? super T, A, R> downstream |
| reducing | Collector<T, ?, T> Collector<T, ?, Optional> Collector<T, ?, U> | T Optional U | T identity, BinaryOperator op BinaryOperator op U identity, Function<? super T, ? extends U> mapper, BinaryOperator op |
| collectingAndThen | Collector<T, A, RR> | RR | Collector<T, A, R> downstream, Function<R, RR> finisher |
| groupingBy | Collector<T, ?, Map<K, List>> Collector<T, ?, Map<K, D>> Collector<T, ?, M> | Map<K, List> Map<K, D> M extends Map<K, D> | Function<? super T, ? extends K> classfier Function<? super T, ? extends K> classfier, Collector<? super T, A, D> downstream Function<? super T, ? extends k> classfier, Supplier mapFactory, Collector<? super T, A, D> |
| partitioningBy | Collector<T, ?, Map<Boolean, List>> Collector<T, ?, Map<Boolean, D> | Map<Boolean, List> Map<Boolean, D> | Predicate<? super T> predicate Predicate<? super T> predicate, Collector<? super T, A, D> downstream |
| teeing | Collector<T, ?, R> | R | Collector<? super T, ?, R1> downstream1, Collector<? super T, ?, R2> downstream2, BiFunction<? super R1, ? super R2, R> merger |
https://n1tjrgns.tistory.com/292
public interface Comparator<T> {
int compare(T o1, T o2);
}
| Static Method | Parameter Types | Return Type |
|---|---|---|
| comparing | Function<? super T, ? extends U> keyExtractor, Comparator<? super U> keyComparator (optional) | Comparator |
| comparingInt comparingLong comparingDouble | ToIntFunction<? super T> keyExtractor ToLongFunction<? super T> keyExtractor ToDoubleFunction<? super T> keyExtractor | Comparator |
| naturalOrder | Comparator | |
| reverseOrder | Comparator | |
| nullsFirst | Comparator<? super T> comparator | Comparator |
| nullsLast | Comparator<? super T> comparator | Comparator |