[JAVA] Optional

KIM KYUBIN·2023년 2월 15일
0

JAVA

목록 보기
4/4

java.util.Optional<T>

✔️ 예상치 못한 NullPointerException을 제공되는 메소드로 간단히 회피 가능

✔️ IntegerDouble 클래스처럼 T타입의 객체를 포장해 주는 래퍼 클래스(Wrapper class)

Optional 객체 생성

✔️ 참조 변수의 값이 null이 될 가능성이 있다면, ofNullable() 메소드를 사용하여 Optional 객체 생성

ofNullable() 메소드

  • 값이 null이 아니면 값을 가지는 Optional 객체 반환
  • 값이 null이면 비어있는 Optional 객체 반환

Optional 객체 접근

1️⃣ get() 메소드를 호출하기 전에 isPresent() 메소드를 사용하여 Optional 객체에 저장된 값이 null인지 아닌지를 먼저 확인한 후 호출

2️⃣ orElse() 메소드를 사용해 저장된 값이 존재하면 그 값을 반환하고, 값이 존재하지 않으면 인수로 전달된 값을 반환

3️⃣ orElseGet() 메소드를 사용해 저장된 값이 존재하면 그 값을 반환하고, 값이 존재하지 않으면 인수로 전달된 람다 표현식의 결괏값을 반환

4️⃣ orElseThrow() 메소드를 사용해 저장된 값이 존재하면 그 값을 반환하고, 값이 존재하지 않으면 인수로 전달된 예외를 발생

참고

http://www.tcpschool.com/java/java_stream_optional

profile
상상을 현실로 만들기 위해 노력하는 개발자

0개의 댓글