[Java] java.util.function 패키지

NHJ·2022년 1월 12일
0

java.util.function 패키지가 제공하는 FunctionalInterface

FunctionalInterface는 JDK8부터 제공해주는 특별한 인터페이스이다. 오직하나의 추상메소드를 갖는 메소드를 FunctionnalInterface라고 말하며 FunctionalInterface를 매개변수로 받는 메소드는 FunctionalInterface의 구현체 대신에 람다식을 전달할 수 있다. FunctionalInterface는 직접 정의해서 사용해도 되지만, 기본적으로 java.util.function 패키지에 정의되어 있는 FunctionalInterface를 정리한다.

기본형 함수형 인터페이스

가장 기본이 되는 함수형 인터페이스로, 매개변수가 없거나 하나인 경우. 다른 함수형 인터페이스들도 여기서 파생된다.

매개변수가 2개인 함수형 인터페이스

위에 정의된 기본형인 Comsumer, Predicate, Function를 매개변수 2개 받도록 변경한 인터페이스들이다.

입력과 반환이 동일한 UnaryOperation, BinaryOperation

UnaryOperation는 기본형 Function와 유사하게 매개변수 1개와 반환타입을 갖는데, 매개변수와 반환값이 동일한 경우에 사용된다. BinaryOperation는 BiFuntion<T, U, R>과 유사하게 매개변수 2개, 반환타입을 갖는데 입력타입과 반환타입이 모두 동일한 경우이다.

매개변수가 2개 이상인 함수형 인터페이스

다음과 같이 직접 함수형 인터페이스를 생성하여 사용할 수 있다.

@FunctionalInterface
public interface FiveParameterConsumer<T, U, V, W, X> {
	public void accept(T t, U u, V v, W w, X x);
}

[참고]

profile
화이팅!

0개의 댓글