TIL/Java & Spring Boot

묵시적 / 명시적 형 변환

삼공비 2022. 8. 3. 12:32

형 변환

- 변수의 자료형이 변환되는 것

- 특정 자료형의 값을 다른 자료형의 변수에 대입 가능

- prmitive는 primitive끼리, reference는 reference끼리 형 변환

- boolean은 변환이 불가

 

묵시적 형 변환

- Implicit Type Casting (자동 형 변환)

- 더 큰 크기의 타입에 집어 넣으면 자동으로 더 큰 타입으로 형변환이 이루어진다.

 

int num1 = 100;
double num2 = num1;
//실수형이 정수형보다 더 크기 때문에 자동으로 형 변환된다.

 

명시적 형 변환

- 더 작은 크기의 타입으로 집어 넣으면 명시적으로 타입을 지정해줘야 한다.

- 이런 경우에는 값 손실이 생길 수 있다.

double num1 = 2.99;
int num2 = (int) num1;
//실수형 2.99를 정수형으로 대입하면 소수점 뒷자리 99는 손실된다.