허용 범위가 큰 타입을 작은 타입으로 강제로 나누어 저장하는 것
()작은 그릇에 큰 그릇의 데이터를 넣으려면 데이터 손실을 감수해야 하는데, 이때 사용하는 것이 캐스팅 연산자인 소괄호 ()다.
// 작은타입 변수 = (작은타입) 큰타입값;
int intValue = 129;
byte byteValue = (byte) intValue; // 강제 타입 변환
int의 4바이트 중 끝에 있는 1바이트만 byte 변수에 저장double pi = 3.14;
int intPi = (int) pi; // intPi에는 3만 저장
int code = 65;
char letter = (char) code; // 'A'
강제 타입 변환을 하기 전에는 값이 대상 타입의 범위 안에 있는지 먼저 확인하는 것이 좋다. 자바 21을 포함한 현대 자바 프로그래밍에서는 이런 잠재적 에러를 방지하기 위해 다음과 같은 체크를 권장한다.
Byte.MIN_VALUE ~ Byte.MAX_VALUE 사이에 있는지 확인