개발/Java
[Java]Optional
흰아리
2022. 3. 1. 00:06
자바개발자라면 가장 많이 겪게 되는 오류 중 하나가 NullPointerException(NPE)일 것이다.
그리고 지금까지의 고전적인 자바 개발 방식에서는 이러한 null 문제를 해결하기 위해 NPE가 발생할 수 있는 부분에 if문을 통한 검증을 늘 포함해주어야 했다.
예를들면 if(name != null){ } 과 같이 말이다. 또는 String name = ""; 과 같이 초기값을 지정해줘야 한다...
null값이 도출되는 변수에 대해 자바8 이상 버전부터 지원하는 래퍼클래스가 Optional이다.
Optional에서는 아래와 같이 제네릭 클래스로 모든 타입의 변수를 감싸줄 수 있다.
Optional 클래스의 주요 메소드는 다음과 같다.
값이 비어있을 때 - Optional.empty()
값이 Null이 아닌 때 - Optional.of()
값이 Null일수도 있고, 아닐수도 있을 때 - Optional.ofNullbale()