[Java] ofNullable()에 대해서 알아보자
Java 8부터 제공되는 Optional 클래스는 null-safe한 코드 작성을 도와주는 유용한 클래스입니다. Optional 클래스는 객체를 감싸서 그 객체가 null인지 아닌지 여부를 판단할 수 있습니다.
ofNullable() 메소드는 Optional 객체를 생성하는 방법 중 하나입니다. 이번 글에서는 ofNullable() 메소드를 사용하는 방법에 대해 알아보겠습니다.
ofNullable() 메소드란?
ofNullable() 메소드는 null일 수 있는 객체를 Optional로 래핑하는 메소드입니다. ofNullable() 메소드는 null인 경우 Optional.empty()를 반환합니다.
다음은 ofNullable() 메소드를 사용하여 null인 경우 Optional 객체를 생성하는 예제입니다.
String name = null;
Optional<String> optionalName = Optional.ofNullable(name);
위 예제에서는 null인 name 변수를 Optional로 래핑합니다. 이 경우, Optional.empty()를 반환합니다.
다음 예제에서는 null이 아닌 값을 Optional로 래핑합니다.
String name = "Java";
Optional<String> optionalName = Optional.ofNullable(name);
위 예제에서는 null이 아닌 "Java"라는 값을 Optional로 래핑합니다.
ofNullable() 메소드 사용 예제
다음 예제는 ofNullable() 메소드를 사용하여 Optional로 값을 래핑한 다음, Optional에서 값을 가져오는 방법을 보여줍니다.
String name = null;
Optional<String> optionalName = Optional.ofNullable(name);
String result = optionalName.orElse("이름이 없습니다.");
System.out.println(result); // 출력: 이름이 없습니다.
위 예제에서는 name 변수를 Optional로 래핑한 다음, orElse() 메소드를 사용하여 Optional이 null인 경우 기본값 "이름이 없습니다."을 반환합니다.
다음 예제는 ofNullable() 메소드를 사용하여 Optional로 값을 래핑한 다음, Optional에서 값을 가져오는 방법을 보여줍니다.
String name = "Java";
Optional<String> optionalName = Optional.ofNullable(name);
String result = optionalName.orElse("이름이 없습니다.");
System.out.println(result); // 출력: Java
위 예제에서는 name 변수가 null이 아닌 "Java" 값인 경우 Optional로 값을 래핑하고, orElse() 메소드를 사용하여 Optional이 null인 경우 기본값 대신 "Java"를 반환합니다.
결론
Java 8에서 추가된 ofNullable() 메소드는 null일 수 있는 객체를 Optional로 래핑하는 유용한 메소드입니다. ofNullable() 메소드를 사용하여 Optional 객체를 생성하면, null일 수 있는 객체를 안전하게 처리할 수 있습니다. Optional 객체를 사용하면 null 예외를 방지하고 코드를 더욱 안전하고 깔끔하게 만들 수 있습니다.