[Java] Optional에서 map과 flatMap의 차이점 쉽고 빠르게 이해하기
·
Java
map과 flatMap의 차이점Optional의 map과 flatMap의 주요 차이점은 함수의 반환 타입이 다르다는 것이다.map : Optional로 감싸진 타입(T)이 비어있지 않으면 .map()을 적용하고, 결과를 Optinal로 감싸서 반환한다. 만약 처음부터 Optional이 비어있었다면 빈 Optional을 반환한다.flatMap : map과 비슷하다. 하지만 .flatMap()을 적용한 결과를 Optional로 감싸지 않고 반환한다는 점만 다르다. 즉, 중첩된 Optional을 평면화 해주는 역할을 한다.예제 코드public class Car { // Car의 필드에 name은 차 이름이 있을수도 없을수도 있기에 Optional 로 감싸져 있다. private Optional na..