Integer — int 원시 타입을 감싸는 래퍼 클래스

Integer — int 원시 타입을 감싸는 래퍼 클래스

Integer원시 타입 int의 값을 객체로 감싸는 클래스예요. Integer 타입 객체는 타입이 int인 단일 필드를 담아요.

출처: Java API Reference

본문

또한 이 클래스는 intString으로, Stringint로 변환하는 여러 메서드와, int를 다룰 때 유용한 상수·메서드들을 제공해요.

이 클래스는 값 기반(value-based) 클래스예요. 프로그래머는 동등한 인스턴스를 서로 교환 가능하게 취급해야 하고, 인스턴스를 동기화에 사용하면 안 돼요 — 예측할 수 없는 동작이 생길 수 있어요. 예를 들어 미래 릴리스에서는 동기화가 실패할 수 있어요.

구현 노트: highestOneBit, numberOfTrailingZeros 같은 "bit twiddling" 메서드의 구현은 Henry S. Warren, Jr.의 Hacker's Delight (Addison Wesley, 2002) 내용을 바탕으로 해요.

상속 구조는 다음과 같아요.

java.lang.Object
  java.lang.Number
    java.lang.Integer

Serializable, Comparable<Integer>, Constable, ConstantDesc를 구현하는 final 클래스예요.

필드

  • static final int BYTES — 이진 2의 보수 형태로 int 값을 나타내는 데 쓰이는 바이트 수 (4).
  • static final int MAX_VALUEint가 가질 수 있는 최댓값, 2³¹-1.
  • static final int MIN_VALUEint가 가질 수 있는 최솟값, -2³¹. (그 외 SIZE 비트 수, TYPE 클래스 등도 있어요.)

주요 메서드

  • parseInt(String s) — 문자열 인자를 부호 있는 십진 int로 파싱해요 (기수 지정 버전도 있어요).
  • valueOf(int)·valueOf(String) — 지정된 int 값이나 문자열을 나타내는 Integer 인스턴스를 반환해요.
  • toString(int)·toString()int 값을 문자열로 변환해요.
  • int intValue()Number로부터 상속된, 이 Integer의 값을 int로 반환해요.
  • int compareTo(Integer anotherInteger) — 두 Integer 값을 숫자로 비교해요.
  • boolean equals(Object obj) — 이 객체를 다른 객체와 비교해요.
  • String toHexString(int)·toOctalString(int)·toBinaryString(int) — 값을 각각 16진·8진·2진 문자열로 변환해요.
  • int highestOneBit(int)·int lowestOneBit(int) — 값에서 가장 높은/낮은 1비트만 남긴 값을 반환해요.
  • int bitCount(int) — 값의 2의 보수 표현에서 1인 비트의 개수를 반환해요.
  • int numberOfLeadingZeros(int)·int numberOfTrailingZeros(int) — 앞/뒤쪽의 0비트 개수를 반환해요.
  • int rotateLeft(int, int)·int rotateRight(int, int) — 값을 지정된 비트 수만큼 회전해요.

캐싱: valueOf는 자주 쓰이는 값(-128~127)에 대해 캐시된 인스턴스를 반환해서 성능을 높여 줘요.

더 알아보기 (Learn more)