인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

khe628님의 프로필 이미지
khe628

작성한 질문수

더 자바, Java 8

자바에서 제공하는 함수형 인터페이스

Supplier를 쓰는 이유

작성

·

1.2K

0

안녕하세요? 강의 잘 듣고 있습니다.

Supplier는 매개변수가 없고 리턴값만 있잖아요,

함수형 프로그래밍을 하려고 순수함수 조건을 만족시키려면 상태가 없어야 하니까 함수 밖에 있는 값을 가져와서 쓸 수 없는데 그러면 Supplier를 왜 쓰는지 이해가 가지 않습니다.

클래스 변수나 인스턴스 변수의 값을 가져와서 리턴하지 않고 순수함수 조건을 만족시키려면 Supplier<Integer> supplier = () -> 10; 이런 식으로 항상 같은 값만 리턴할텐데 어떤 경우에 Supplier를 쓰는지 예시가 궁금합니다.

답변 1

1

백기선님의 프로필 이미지
백기선
지식공유자

자바의 Optional에 보시면 Supplier를 전달 받는 메서드들이 있는데요. 전 개인적으로 Supplier를 쓰면 미리 만들지 않고, 필요할 때 만들어 제공할 수 있는 장점이 있는 것 같아요.

khe628님의 프로필 이미지
khe628

작성한 질문수

질문하기