Predicate<T>
- boolean test(T value)
Predicate의 친구들
IntPredicate
- boolean test(int value)
LongPredicate
- boolean test(long value)
DoublePredicate
- boolean test(double value)
BiPredicate<T, U>
- boolean test(T t, U u)
위 세가지 방식은 기본 자료형에 대해서 Predicate<T>를 사용하게 되면 Integer 등으로 박싱하고 연산할 때 언박싱하는 불필요한 연산이 추가된다는 점을 해소하기 위함
BiPredicate는 값 두개를 입력받는 Predicate
Supplier<T>
- T get();
getter의 일반화
IntSupplier
- int getAsInt()
LongSupplier
- long getAsLong()
DoubleSupplier
- double getAsDouble()
BooleanSupplier
- boolean getAsBoolean()
Consumer<T>
- void accept(T t);
소비자
반환값 X, 입력 O
DoubleConsumer
- void accept(double value)
ObjDoubleConsumer<T>
- void accept(T t, double value)
BiConsumer<T, U>
- void accept(T t, U u)
Function<T,R>
- R apply(T t);
T는 입력, R은 출력
친구가 엄청 많다
친구들 이름 패턴
1. A To B : A는 입력 B는 출력
2. A Unary : 입력, 출력 둘 다 A
3. Bi : 입력이 두개
4. A : 입력이 A
5. ToA : 출력이 A
추가
1. UnaryOperator<T> T apply(T t)
2. BinaryOperator<T> T apply(T t1, T t2)
'백엔드 > Java' 카테고리의 다른 글
[Maven] in project cannot be read or is not a valid ZIP file (0) | 2018.10.16 |
---|---|
Dynamic Web Module 버전 변경 (0) | 2018.08.17 |
람다와 함수형 인터페이스 (0) | 2018.06.25 |
이너 클래스/로컬 클래스/익명 클래스/람다 (0) | 2018.06.21 |
람다의 표현식 (0) | 2018.06.06 |
댓글