Long — long 원시 타입을 감싸는 래퍼 클래스

Long — long 원시 타입을 감싸는 래퍼 클래스

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

출처: Java API Reference

본문

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

이 클래스는 값 기반(value-based) 클래스예요. 동등한 인스턴스를 서로 교환 가능하게 취급해야 하고, 인스턴스를 동기화에 사용하면 안 돼요 — 예측할 수 없는 동작이 생길 수 있어요. Integer와 마찬가지로 bit twiddling 메서드들은 Hacker's Delight를 바탕으로 해요.

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

java.lang.Object
  java.lang.Number
    java.lang.Long

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

필드

  • static final int BYTES — 이진 2의 보수 형태로 long 값을 나타내는 데 쓰이는 바이트 수 (8).
  • static final long MAX_VALUElong이 가질 수 있는 최댓값, 2⁶³-1.
  • static final long MIN_VALUElong이 가질 수 있는 최솟값, -2⁶³.

주요 메서드

  • parseLong(String s) — 문자열 인자를 부호 있는 십진 long으로 파싱해요 (기수 지정 버전도 있어요).
  • valueOf(long)·valueOf(String) — 지정된 long 값이나 문자열을 나타내는 Long 인스턴스를 반환해요.
  • toString(long)·toString()long 값을 문자열로 변환해요.
  • long longValue()Number로부터 상속된, 이 Long의 값을 long으로 반환해요.
  • int compareTo(Long anotherLong) — 두 Long 값을 숫자로 비교해요.
  • String toHexString(long)·toOctalString(long)·toBinaryString(long) — 값을 각각 16진·8진·2진 문자열로 변환해요.
  • long highestOneBit(long)·long lowestOneBit(long) — 값에서 가장 높은/낮은 1비트만 남긴 값을 반환해요.
  • int bitCount(long) — 값의 2의 보수 표현에서 1인 비트의 개수를 반환해요.
  • int numberOfLeadingZeros(long)·int numberOfTrailingZeros(long) — 앞/뒤쪽의 0비트 개수를 반환해요.

자바 8 이후에는 부호 없는(unsigned) 연산용 메서드(toUnsignedString, compareUnsigned, divideUnsigned, remainderUnsigned 등)도 제공해요.

더 알아보기 (Learn more)