[Spring] Optional

손시연·2022년 8월 28일
0

spring-boot

목록 보기
9/10
  • Optional
    • Null-Safe 하기 위해
      • Null 을 받더라도 NullPointException 이 나지 않음
      • 값의 존재 여부를 판단하지 않고 접근한다면 NullPointerException는 피해도 NoSuchElementException가 발생할 수 있음
    • Optional.orElseX()로 기본 값을 반환
private String findDefaultName() {
    return ...;
}

// AVOID
public String findUserName(Long id) {

    Optional<String> optionalName = ... ;

    if (optionalName.isPresent()) {
        return optionalName.get();
    } else {
        return findDefaultName();
    }
}

// PREFER
public String findUserName(Long id) {

    Optional<String> optionalName = ... ;
    return status.orElseGet(this::findDefaultName);
}
profile
Server Engineer

0개의 댓글