Java 묵시적 형 변환
개발자가 직접 형 변환을 하지 않아도 묵시적(자동) 변환을 해준다.
큰 수 에서 작은 수의 타입을 변경할 때 사용해야 한다.
int형 변수가 double 형 변수로 변환할 수 있다.
변환된 double 변수는 실수 형을 담을 수 있게 해준다.
형 변환에도 종류가 있으며 두 종류가 있다.
타입의 크기가 작은 순부터 큰 수
- int < long < double
변환하려는 타입이 현재 값보다 크기가 작은 경우
- 소숫점 버림
- 오버플로우
형 변환 종류
- 자동 형 변환
- 묵시적 형 변환
Java 코드
int integerValue;
long longValue;
double doubleValue;
integerValue = 100;
System.out.println("inteerValue = " + integerValue);
longValue = integerValue;
System.out.println("longValue = " + longValue);
doubleValue = 2000L;
System.out.println("doubleValue = " + doubleValue);
출력결과:
inteerValue = 100
longValue = 100
doubleValue = 2000.0
자동 형 변환
작은 숫자에서 큰 숫자의 타입으로 개발자가 직접 형 변환을 하지 않아도 묵시적(강제) 변환을 해준다.
개발자가 자동 형 변환이 필요하다면 (double), (long) 괄호로 감싸서 할당해주도록 한다.
integerValue = 100;
doubleValue = (double) integerValue; // int형 변수를 강제로 double 변경하여 할당
System.out.println("doubleValue = " + doubleValue);
doubleValue = (double) 100L; // Long 타입의 리터럴 값을 강제로 double 변경하여 할당
System.out.println("doubleValue = " + doubleValue);
doubleValue = 100.0;
System.out.println("doubleValue = " + doubleValue);