JAVA/포스팅

자바 java.util.function패키지

짜집퍼박사(짜박) 2023. 11. 22. 00:51

java.util.function 패키지는 함수형 프로그래밍을 지원하기 위한 인터페이스들을 제공합니다. 이 패키지의 인터페이스들은 주로 람다식 및 메서드 참조와 함께 사용되며, 자주 사용되는 함수형 인터페이스들을 정의하고 있습니다.

일반적으로 널리 사용되는 함수형 인터페이스에는 Function, Consumer, Predicate, Supplier 등이 있습니다. 아래에는 java.util.function 패키지의 주요 인터페이스들과 간단한 설명이 제공됩니다.

 

1. Function<T, R>

apply(T t) 메서드를 정의하며, 입력 타입 T를 받아서 결과 타입 R을 반환합니다.

 

2. Consumer<T>

accept(T t) 메서드를 정의하며, 입력 타입 T를 받아서 아무런 결과를 반환하지 않습니다.

 

3. Predicate<T>

test(T t) 메서드를 정의하며, 조건을 만족하는지 여부를 반환합니다.

 

4. Supplier<T>

get() 메서드를 정의하며, 어떤 값을 제공(생성)하는 역할을 합니다.

 

5. UnaryOperator<T>

apply(T t) 메서드를 정의하며, 하나의 입력값을 받아 같은 타입의 결과값을 반환합니다.

 

6. BinaryOperator<T>

apply(T t1, T t2) 메서드를 정의하며, 두 개의 입력값을 받아 같은 타입의 결과값을 반환합니다.

 

7. BiFunction<T, U, R>

apply(T t, U u) 메서드를 정의하며, 두 개의 입력값을 받아 결과값을 반환합니다.

 

8. BiConsumer<T, U>

accept(T t, U u) 메서드를 정의하며, 두 개의 입력값을 받아 아무런 결과를 반환하지 않습니다.

 

9. Supplier<T>

get() 메서드를 정의하며, 어떤 값을 제공(생성)하는 역할을 합니다.

 

이러한 함수형 인터페이스들은 Java에서 함수를 일급 시민으로 취급하게끔 하며, 람다식 및 메서드 참조와 함께 자주 사용됩니다. 함수형 프로그래밍의 개념을 Java에 도입하여 코드를 간결하게 작성하고, 병렬 처리 및 비동기 프로그래밍에 유리한 구조를 제공합니다.

 

With ChatGPT

'JAVA > 포스팅' 카테고리의 다른 글

자바 Predicate의 결합  (0) 2023.11.22
자바 Function의 합성  (0) 2023.11.22
자바 함수형 인터페이스  (0) 2023.11.22
자바 람다식 작성하기  (0) 2023.11.22
자바 람다식  (0) 2023.11.22