Java

[Java] 생활코딩 | 상수와 데이터 타입

kyra 2022. 9. 9. 15:27

기본적으로 정수형 데이터 타입은 int, 실수형 데이터타입은 double을 사용한다.

[실수의 표현]

1. 변수와 상수는 각각 데이터 타입을 갖고 있다.

int a = 2.2; // a의 데이터타입은 int, 2.2의 데이터타입은 실수(double)이다. 따라서 오류가 발생한다.

 

위의 코드가 오류가 나지 않도록 하려면 1) double로 a의 데이터 타입을 지정하는 방법 , 2) a와 2.2를 모두 float으로 지정하는 방법이 있다.

double a = 2.2;

float a = 2.2F; //float로 지정할 때는 숫자 뒤에 F를 붙여 명시적으로 형을 변환한다.

 

[정수의 표현]

int a = 2147483648; // 이 코드는 int가 담을 수 있는 범위(2147483647)를 넘어서 오류가 발생한다.

long a = 214783648; // 그렇다고 long으로 바꿔도 오류가 나는데, 이는 정수표현의 default는 int이기 때문이다.

long a = 214783648L; // 따라서 숫자 뒤에 L을 붙여 명시적으로 long으로 형변환 해야한다.

 

반면 int보다 작은 short나 byte는 int형을 허용해 다음과 같을 때는 오류가 발생하지 않는다.

byte a = 100;
short b = 200; //byte와 short는 int보다 작아서 형변환 하지 않아도 오류 발생하지 않음