본문 바로가기
JAVA

정수리터럴, 부동소수점 리터럴 [코딩백과 with JAVA]

by GangDev 2024. 12. 20.

정수 리터럴(Integer Literals)

정수 리터럴은 자바에서 가장 기본적인 데이터 타입 중 하나입니다. 정수 리터럴은 소스 코드 내에서 직접 표현된 정수 값을 의미하며, 다양한 형식으로 표현할 수 있습니다.

정수 리터럴의 기본 타입

  • 정수 리터럴은 기본적으로 int 타입입니다.
  • 'L' 또는 'l' 접미사가 붙으면 long 타입이 됩니다.
  • 대문자 'L'을 사용하는 것이 권장됩니다. 소문자 'l'은 숫자 '1'과 혼동될 수 있기 때문입니다.

정수 리터럴 이해하기

  1. 10진수(Decimal) 리터럴:
    • 우리가 일상적으로 사용하는 숫자 시스템입니다.
    • 0부터 9까지의 숫자를 사용합니다.
    • 예: int decimalValue = 26;
  2. 16진수(Hexadecimal) 리터럴:
    • '0x' 또는 '0X'로 시작합니다.
    • 0부터 9까지의 숫자와 A부터 F까지의 문자를 사용합니다.
    • 예: int hexadecimalValue = 0x1a;
  3. 2진수(Binary) 리터럴:
    • '0b' 또는 '0B'로 시작합니다.
    • 0과 1만을 사용합니다.
    • Java SE 7 이상에서 지원됩니다.
    • 예: int binaryValue = 0b11010;

정수 리터럴의 특징

  1. 범위:
    • int 타입의 리터럴은 -2,147,483,648부터 2,147,483,647까지의 값을 가질 수 있습니다.
    • long 타입의 리터럴은 -9,223,372,036,854,775,808부터 9,223,372,036,854,775,807까지의 값을 가질 수 있습니다.
  2. 언더스코어(_) 사용:
    • Java 7 이상에서 숫자 사이에 언더스코어를 사용하여 가독성을 높일 수 있습니다.
    • 예: int million = 1_000_000;
  3. 부호:
    • 기본적으로 양수입니다.
    • 음수는 '-' 기호를 앞에 붙여 표현합니다.
    • 예: int negativeNum = -42;

주의사항 및 팁

  1. 타입 일치:
    • 리터럴의 값이 변수의 타입 범위를 벗어나면 컴파일 오류가 발생합니다.
    • 예: `byte smallNum = 200; // 오류: byte의 범위를 초과
  2. 명확성:
    • 큰 숫자를 표현할 때는 언더스코어를 사용하여 가독성을 높이는 것이 좋습니다.
    • 예: `int bigNum = 1_000_000_000;
  3. 타입 변환:
    • 더 작은 타입으로 할당할 때는 명시적 캐스팅이 필요할 수 있습니다.
    • 예: byte smallNum = (byte) 256; // 주의: 데이터 손실 가능성 있음
  4. 리터럴 연산:
    • 정수 리터럴 간의 연산은 컴파일 시점에 수행됩니다.
    • 예: int result = 10 * 20; // 컴파일 후 int result = 200;
  5. 일반적인 사용:
    • 대부분의 일반적인 프로그래밍에서는 10진수 시스템만 사용할 가능성이 높습니다.
    • 하지만 특정 상황(예: 비트 조작, 네트워크 프로토콜 등)에서는 16진수나 2진수가 유용할 수 있습니다.

부동소수점 리터럴(Floating-Point Literals)

부동소수점 리터럴은 자바에서 소수점을 가진 숫자를 표현하는 방법입니다. 이 리터럴들은 floatdouble 타입의 변수에 사용됩니다.

부동소수점 리터럴의 형식

  1. 기본 형식:
double doubleLiteral = 3.14159;
float floatLiteral = 3.14159f;
  1. 지수 표기법(E-notation):
  2. double doubleExp = 3.14159E-5; float floatExp = 3.14159E-5f;
  3. 접미사 사용:
    • D 또는 d: double 타입 (생략 가능)
    • F 또는 f: float 타입
    • 예: double d = 123.4D;, float f1 = 123.4F;

부동소수점 리터럴의 특징

  1. 기본 타입:
    • 부동소수점 리터럴은 기본적으로 double 타입입니다.
    • float 타입을 나타내려면 'f' 또는 'F' 접미사를 사용합니다.
  2. 정밀도:
    • float: 약 6-7개의 십진수 자릿수를 정확하게 표현할 수 있습니다.
    • double: 약 15-16개의 십진수 자릿수를 정확하게 표현할 수 있습니다.
  3. 범위:
    • float: ±3.4028235677973366e+38f (대략 ±10^38)
    • double: ±1.7976931348623157e+308 (대략 ±10^308)

---

편히 모아진 글 보시려면 아래 위키독스 링크 >>
https://wikidocs.net/book/17111