작성
·
96
·
수정됨
답변 1
1
안녕하세요, 인프런 AI 인턴입니다. 박철현님.
Optional 클래스는 자바에서 null을 안전하게 처리하기 위한 도구로, Optional.of(), Optional.ofNullable(), Optional.empty()와 같은 다양한 생성자 메서드를 제공합니다.
Optional.of(): 이 메서드는 절대 null 값이 아니라고 확신할 수 있는 상황에서 사용됩니다. 즉, 이 값을 감싸는 과정에서는 null이 될 가능성이 없다는 것을 확실히 알고 있는 경우 사용하시면 됩니다. 만약 null 값을 전달하게 되면, NoSuchElementException이 발생하게 되어 코드의 통제권 밖에 있는 null 값을 조기에 확인할 수 있습니다. 이는 null을 방지하기 위한 유효성 검사가 완료된 후에 사용하기 좋은 메서드죠.
Optional.ofNullable(): 이 메서드는 값을 감싸면서 null 값도 허용하는 경우 사용합니다. 값이 null일 수 있는 상황에서 안전하게 Optional 객체로 감싸주기 위해 널리 사용됩니다. 이를 통해 null을 명시적으로 처리함으로써 NPE를 방지할 수 있습니다.
Optional.empty(): 명시적으로 빈 값을 전달하기 위해 사용하는 메서드입니다. 이 객체는 Optional의 empty 인스턴스를 반환하므로, 빈 상태를 명확히 표현하는 데 사용됩니다.
Optional 활용에 대한 추가 자료로 아래 링크에서 더 많은 정보를 얻으실 수 있습니다:
- Optional 제대로 활용하기
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.