관리 메뉴

KorSA

JAVA Optional of() vs ofNullable() 본문

Development Experience/Web

JAVA Optional of() vs ofNullable()

Praiv. 2022. 4. 1. 13:52
320x100

JAVA에서 Null을 처리하기 위한 방법으로 Optional을 사용한다.

Null 대신 Optional 이라는 객체를 반환함으로써 NullPointerException 이 발생하는 걸 방지하기 위해서이다.

 

회사에서 개발을 하면서 Optional.of() 함수를 썼는데 NullPointerException이 발생했다.

코드를 보니 아래와 같은 느낌으로 작성되어 있어서 of()의 전달인자로 null이 전달된 것이었다.

Object myName = null;
Optional.of((String)myName);

 

Optional.of()를 호출하려면 null이 아닌 값만 전달되어야 한다.

만일 null이 "될수도" 있는 값이 전달된다면 Optional.ofNullable()을 호출해야 한다.

Object myName = null;
Optional.ofNullable((String)myName);

 

728x90
728x90
Comments