[Effective Java 3/e] 아이템 55 - 옵셔널 반환은 신중히 하라


아이템 55 - 옵셔널 반환은 신중히 하라

정리

  • 옵셔널을 반환하는 메서드에서는 절대 null을 반환하지 말자.
  • 옵셔널은 checked exception 과 취지가 비슷하다.
  • 컬렉션, 스트림, 배열, 옵셔널 같은 컨테이너 타입은 옵셔널로 감싸면 안 된다.
    • 빈 컨테이너 그대로 반환하면 클라이언트에 옵셔널 처리 코드를 넣지 않아도 됨
  • 결과가 없을 수 있으며, 클라이언트가 이 상황을 특별하게 처리해야 한다면 Optional를 반환한다.
  • 박싱된 기본 타입을 담은 옵셔널을 반환하는 일은 없도록 하자.
  • 옵셔널을 컬렉션의 키, 값, 원소나 배열의 원소로 사용하는게 적절한 상황은 거의 없다.