JAVA

타입 (1)

IT70 2024. 2. 13. 00:01

 기본 타입

값의 분류 기본 타입
정수 byte, char, short, int, long
실수 float, double
논리(true/fasle) boolean

 

 정수 타입 ( byte, short, int, long )

- 정수 타입 메모리

byte short int long
8 bit 16 bit 32 bit 64 bit

부호가 있는 정수 타입이므로 최상위 bit는 부호 bit로 사용되고, 나머지 bit는 값의 범위를 결정

기본적으로 컴파일러는 정수 리터럴을 int 타입 값으로 간주. int타입의 허용 범위를 초과하는 리터럴은 대문자L을 붙여 long타입 값임을 컴파일에게 알려줘야 함.(소문자 l을 붙여도 상관 없음)

 

- 변수에 대입할 정수 리터럴은 진수에 따라 작성하는 방법이 다르다.

(리터럴: 코드에서 프로그래머가 직접 입력한 값)

  • 2진수: 0b 또는 0B로 시작하고 0과 1로 작성
  • 8진수: 0으로 시작하고 0~7 숫자로 작성
  • 10진수: 소수점이 없는 0~9 숫자로 작성
  • 16진수: 0x 또는 0X로 시작하고 0~9 숫자나 A,B,C,D,E,F 또는 a,b,c,d,e,f로 작성

 문자 타입 ( char )

유니코드를 저장할 수 있도록 char타입 제공. 하나의 문자작은따옴표(') 로 감싼 것을 문자 리터럴이라고 함.

char 타입의 변수에 단순히 초기화 목적으로 '' 빈 문자를 대입하면 컴파일 에러 발생. 공백 하나를 포함해서 초기화해야한다.

char a = 'A';
char b = '가';

char c = ''; // 컴파일 에러
char c = ' '; // 공백 하나 포함해서 초기화

 

 실수 타입 ( float, double )

타입 메모리 크기
float 4byte(32bit)
double 8byte(64bit)

컴파일러는 실수 리터럴을 기본적으로 double 타입으로 해석.

float 타입에 대입하고 싶다면 리터럴 뒤에 f를 붙여(대문자도 가능) 컴파일러가 float타입임을 알 수 있도록 해야함.

double 타입이 float 타입보다 큰 실수를 저장하고 정밀도 또한 높다

 

 논리 타입 ( boolean )

참 거짓을 의미하는 논리 리터럴은 true, false. 

'JAVA' 카테고리의 다른 글

조건문과 반복문  (0) 2024.03.05
연산자(논리, 대입, 삼항(조건))  (0) 2024.02.14
연산자 (부호/증감, 산술, 오버플로우, 언더플로우, NaN, Infinity)  (0) 2024.02.14
타입 (2)  (0) 2024.02.14
변수 선언  (0) 2024.02.13