Java8 定義済み関数型インタフェース(主要なものメモ)

忘れるのでメモ。プリミティブ型用のインタフェースは省略。

Interface Scala風関数型表記
Consumer<T> (T) => void
BiConsumer<T, U> (T, U) => void
Supplier<T> () => T
Function<T, R> (T) => R
BiFunction<T, U, R> (T, U) => R
Predicate<T> (T) => boolean
BiPredicate<T, U> (T, U) => boolean
UnaryOperator<T> (T) => T
BinaryOperator<T> (T, T) => T
Comparator<T> (T, T) => int

Comparator<T> は、Java7の頃から存在する、ソート等での順位付けを行う比較関数を実装するための Interface のため、 java.util パッケージに属する。その他は java.util.function パッケージに属する。