본문 바로가기

Web/JAVA

[Optional]

728x90

 

 

 

NullPointerException

 

Null - 자바에서 제공되는 키워드로 참조형 타입의 기본값으로 사용 됨

null 인 경우 할당되는 메모리가 없다

 

NullPointException Case -> null 객체의 메소드나 필드 접근, null throw하는 경우

 

NullPointerException 피하기

 

 

 

하지만 어쩔 수 없이 Null 을 처리해야하는 상황이 오는데 이때 이 Optional을 사용한다

 

Java.util.Optional<T>

Null을 안전하게 사용할 수 있는 기능을 제공

Null이 올 수 있는 가능성이 있는 참조객체를 Wrapping하는 Wrapper 클래스이다

 

 

 

 

 

 

 

Optional 에는 객체를 다룰 수 있는 다양한 메소드가 있다

 

 

 

 

 

filter : predicate 를 사용하여 값이 true 이면 필터 통과

 

 

map : function 을 사용하여 입력값을 다른 값으로 변환시켜줌

 

 

 

flatmap 은 한단계 더 들어가서 수행시켜줌

 

 

 

isPresent / isEmpty

 

ifPresent / ifPresentOrElse

 

 

 

 

get

최종적으로 나온 객체를 Optional 에서 꺼내는 기능

객체가 존재하지않으면 예외발생

 

앞서서 ifPresent / ifPresentOrElse 같은 검증하는 로직이 필요 

 

 

 

 

 

orElse

 

 

orElseGet

 

728x90

'Web > JAVA' 카테고리의 다른 글

[Java LTS] Java 8, 11, 17  (0) 2023.04.22
[Stream]  (0) 2023.04.19
[effective java] 3판 요약 보면서 (2)  (0) 2023.04.18
[Functional Interface]  (0) 2023.04.18
[effective java] 3판 요약 보면서 (1)  (0) 2023.04.17