double은 실수 값을 가지므로 정수 값도 가질 수 있다.
다음이 가능하다.
이를 묵시적 타입 변환(자동 타입 변환, implicit conversion)이라 한다.
double d1 = 50;
double d2 = 500L;
int i1 = 50.0;
int i2 = 25.4f;

실수 값을 정수 타입의 변수에 저장하려면 정수 타입으로 형 변환을 해야 한다.
변환하고자 하는 값 앞에 (int)를 붙인다.
❗주의할 점은 소수점 이하는 잘린다.
이를 명시적 타입 변환( 강제 타입 변환, explicit conversion )이라고 한다.
int i1 = (int)50.0;
int i2 = (int)25.4f;
long 타입의 변수는 byte, short, int 타입의 값을 저장할 수 있다.
int 타입의 변수는 byte, short 타입의 값을 저장할 수 있다.
short 타입의 변수는 byte 타입의 값을 저장할 수 있다.
short s = 5;
int i = s;
long x = i;
System.out.println(i);
System.out.println(x);
5
5
❗크기가 큰 타입을 작은 타입에 저장할 때는 오버플로우를 조심해야 한다.
long x = Long.MAX_VALUE;
int i = (int)x;
System.out.println(x);
System.out.println(i);
9223372036854775807
-1
⭐자바 강제 형변환 시 주의할 점 검색해보기