아이템 61. 박싱된 기본 타입보다는 기본 타입을 사용하라 - KwangtaekJung/book-effective-java GitHub Wiki

차이점

  • 기본 타입은 값만 가지고 있으나, 박싱된 기본 타입은 값에 대해 식별성(identity)을 갖는다.
    • 박싱된 기본 타입의 두 인스턴스는 값이 같아도 서로 다르다고 식별할 수 있다.
  • 기본 타입의 값은 언제나 유효하나, 박싱된 기본 타입은 유효하지 않은 값, 즉 null을 가질 수 있다.
  • 기본 타입이 박싱된 기본 타입보다 시간과 메모리 사용면에서 더 효율적이다.

박싱된 기본 타입을 사용하는 경우

  • 컬렉션의 원소 키, 값으로 사용
    • 더 일반화하면, 매개변수화 타입이나 매개변수화 메서드의 타입 매개 변수로 사용 시
  • 리플렉션을 통해 메서드를 호출할 때