참치코더의 꿈 메모장

Java// java.util.function 패키지 본문

JAVA

Java// java.util.function 패키지

참치깡 2020. 4. 22. 04:49
728x90

 java.util.function 패키지

 람다식을 사용할때 인터페이스를 막 만들어서 사용하려면 힘들고 지친다

또한 매개변수가 없거나 한개 또는 두개이기 때문에  인터페이스가 중복이되어 사용될 가능성이 크다.

따라서 java에서 자체적으로 인터페이스를 정의해둔 패키지가 있는데 이것이 java.util.function 패키지 이다.

 

중요한 함수형 인터페이스와 메서드를 정리해보자

 

  • 함수형 인터페이스 java.lang.Runnable 메서드 void run() 매개변수도 없고, 반환값도 없음.
  • 함수형 인터페이스 Supplier<T> 메서드 T get() 매개변수는 없고, 반환값만 있음.
  • 함수형 인터페이스 Consumer<T> 메서드 void accept(T t) 매개변수만있고 반환값이 없음.
  • 함수형 인터페이스 Function<T,R> 메서드 R apply(T t) 가장 기본형 하나의 매개변수를 받아서 결과 도출
  • 함수형 인터페이스 Predicate<T> 메서드 boolean test(T t) 매개변수는 하나, 반환타입은 boolean.
  • 함수형 인터페이스 BiConsumer<T,U> 메서드 void accept(T t,U u) Bi가 붙으면 매개변수가 2개라는 뜻  반환값이 없음.
  • 함수형 인터페이스 BiPredicate<T,U> 메서드 boolean test(T t, U u) 매개변수 2개 반환값 boolean.
  • 함수형 인터페이스 BiFunction<T,U,R> 메서드 R apply(T t, U u) 매개변수 2ro 반환값 1개.
  • 함수형 인터페이스  UnaryOperator<T> 메서드 T apply(T t) Function의 자손 매개변수와 결과의 타입이 같다.

 

기본형을 사용하는 함수형 인터페이스

  

  래퍼클래스가 아닌 기본형을 사용하는 방법이다. 래퍼클래스보다 더 효율적인 방법이다.

 

  • 함수형 인터페이스  DoubleToIntFunction 메서드 int applyAsInt(double d)  double을 넣으면  int값 출력.
  • 함수형 인터페이스  ToIntFunction<T> 메서드 int applyAsInt(T value) 지네릭 타입이 int 타입으로 출력된다.
  • 함수형 인터페이스  IntFunction<R> 메서드 T apply(T t, U u) int 값을 입력하면 출력이 지네릭 타입이다.
  • 함수형 인터페이스  ObjIntConsumer<T> 메서드 void accept(T t, U u) T, int 값이 입력되고 출력이 없다.
728x90

'JAVA' 카테고리의 다른 글

2021/07/09 JAVA - 과제 - 숫자 야구 게임  (0) 2021.07.09
20210708 JAVA 과제 - '탄수화물 중독' 자가 진단 하기  (0) 2021.07.08
210706 java - 변수, 기본 타입  (0) 2021.07.06
Java// 람다식  (0) 2020.04.19
JAVA// Calendar & DATE  (0) 2020.02.16
Comments