[ITWILL : JAVA] 람다식을 이용한 함수형 프로그래밍1 : 계열
ITWILL학원 : 22강 JAVA BY 윤미영강사
- 자바 8에서는 빈번히 사용되는 함수형 인터페이스들을 java.util.function패키지를 통해 제공한다.
1. Consumer 계열
- 소비자계열은 무엇을 소비할까? 바로 파라미터이다.
- 전달받은 파라미터를 받아서 소비하는 소비자이며 리턴값은 없다
- Consumer 계열의 인터페이스 :
- biConsumer는 bi가 두 개라는 의미로 두 개의 파라미터를 받는다.
- 객체를 처리하지않고 기본형을 처리하는 경우 double, long, int 값을 처리할 수 있다.
2. Supplier 계열
- 공급자계열은 무엇을 공급할까? 바로 리턴값이다.
- 파라미터를 받지 않고 자체적으로 리턴할 값을 생성한다
- 파라미터가 없기때문에 bi가 붙는 형태는 없다.
인터페이스명 | 메서드 | 설명 |
---|---|---|
Supplier |
T get() | T타입 객체 리턴 |
pSupplier | p getAsp() | p타입의 값 리턴 |
참고 | p는 boolean, int, long, double를 의미한다 |
3. Function 계열
- 파라미터도 받고, 리턴도 존재한다.
4. Operator 계열
- function계열과 유사하게 파라미터와 리턴 타입을 모두 갖는다.
- 차이점 :
- function계열 : 파라미터와 리턴 타입이 무관
- operator계열 : 파라미터를 이용해 어떤 연산을 수행한 후 파라미터와 같은 타입이 리턴된다.
5. Predicate 계열
- 파라미터와 리턴타입을 갖는데 리턴타입이 boolean으로 고정.