Java/Java 학습
[JAVA] Java8의 Optional이란?
1. null과 관련된 문제 null과 관련된 문제들을 크게 2가지로 요약해보면 1) 런타임에 NPE(NullPointerException)라는 예외를 발생시킬 수 있다. 2) NPE 방어를 위해서 들어간 null 체크 로직 때문에 코드 가독성과 유지 보수성이 떨어진다. 이렇게 null과 관련된 문제들로 인하여 Optional이 등장하게 되었다. 2. Optional 이란? Java8에서 Optional는 null이 올 수 있는 객체를 감싸는 Wrapper 클래스로, 참조하더라도 NPE가 발생하지 않도록 도와준다. Optional을 최대 1개의 원소를 가지고 있는 특별한 Stream이라고 생각하면 편하다. Optional 클래스는 아래와 같은 value에 값을 저장하기 때문에 값이 null이더라도 바로 ..