-
2. 자바에서 제공하는 함수형 인터페이스자바/자바8 2022. 3. 18. 10:15
1. 자주 사용하는 함수형 인터페이스(functional interface)
- 아래 메소드는 오라클 자바8에서 사용법을 찾아 직접 사용해보기를 권장합니다.
- 함수형 인터페이스는 매개변수와 리턴 타입을 지정 한다/안한다, 매개변수가 있다/없다, 리턴이 있다/없다로 다양하게 있습니다.
- Function<T, R>: T 타입으로 매개변수를 받아서 R 타입으로 리턴하는 함수 인터페이스.
- BiFunction<T, U, R>: 두 개의 값(T, U)를 받아서 R 타입을 리턴하는 함수 인터페이스.
- Consumer<T>: T 타입을 받아서 아무값도 리턴하지 않는 함수 인터페이스.
- Supplier<T>: 매개변수 없이 정해진 값을 리턴하는 함수 인터페이스.
- Predicate<T>: T 타입을 받아서 boolean을 리턴하는 함수 인터페이스.
- UnaryOperator<T>: Function와 같지만 매개변수와 리턴값의 타입이 같은 경우
- BinaryOperator<T>: BiFunction와 같지만 매개변수와 리턴값의 타입이 같은 경우
Function<Integer,Integer> function = new Function<Integer, Integer>() { @Override public Integer apply(Integer integer) { return integer+10; } };Function<Integer,Integer> function = i -> i+10;*사용법은 오라클 자바 docs 참고하세요.
https://docs.oracle.com/javase/8/docs/api/java/util/function/package-summary.html
java.util.function (Java Platform SE 8 )
Interface Summary Interface Description BiConsumer Represents an operation that accepts two input arguments and returns no result. BiFunction Represents a function that accepts two arguments and produces a result. BinaryOperator Represents an operation u
docs.oracle.com
*실습 자료는 깃허브에 커밋했습니다.
https://github.com/bamcoding/workspace-toy/tree/master/java8to11
GitHub - bamcoding/workspace-toy: "React.js, 스프링 부트, AWS로 배우는 웹 개발 101" 따라하기.
"React.js, 스프링 부트, AWS로 배우는 웹 개발 101" 따라하기. Contribute to bamcoding/workspace-toy development by creating an account on GitHub.
github.com
<- 이전 게시글로 이동합니다.
https://distribute.tistory.com/133?category=1085132
1. 함수형 인터페이스와 람다 표현식 소개
1. 함수형 인터페이스 - 추상 메소드가 하나만 있으면 함수형 인터페이스. - FunctionalInterface 어노테이션을 가지고 있는 인터페이스. - 자바8에서 abstract, public 예약어 생략 가능. - 자바8의 함수형
distribute.tistory.com
'자바 > 자바8' 카테고리의 다른 글
스트림 (0) 2022.05.01 Callable과 Future (0) 2022.03.17 Executor (0) 2022.03.17 1. 함수형 인터페이스와 람다 표현식 소개 (0) 2022.03.11 0. 자바8 학습의 필요성 (0) 2022.03.11