표 2-1은 Stream과 Collectors에 속한 메서드들의 파라미터로 나타나는 함수형 인터페이스를 요약해서 보여준다.
▼ 표 2-1 스트림 API에서 사용하는 함수형 인터페이스
함수형 인터페이스 |
파라미터 타입 |
리턴 타입 |
설명 |
Supplier<T> |
없음 |
T |
T 타입 값을 공급한다. |
Consumer<T> |
T |
void |
T 타입 값을 소비한다. |
BiConsumer<T, U> |
T, U |
void |
T와 U 타입 값을 소비한다. |
Predicate<T> |
T |
boolean |
boolean 값을 리턴하는 함수다. |
ToIntFunction<T> ToLongFunction<T> ToDoubleFunction<T> |
T |
int long double |
T 타입을 인자로 받고 각각 int, long, double 값을 리턴하는 함수다. |
IntFunction<R> LongFunction<R> DoubleFunction<R> |
int long double |
R |
각각 int, long, double을 인자로 받고 R 타입을 리턴하는 함수다. |
Function<T, R> |
T |
R |
T 타입을 인자로 받고 R 타입을 리턴하는 함수다. |
BiFunction<T, U, R> |
T, U |
R |
T와 U 타입을 인자로 받고 R 타입을 리턴하는 함수다. |
UnaryOperator<T> |
T |
T |
T 타입에 적용되는 단항 연산자다. |
BinaryOperator<T> |
T, T |
T |
T 타입에 적용되는 이항 연산자다. |