자바에서의 타입변환
: 어떤 데이터 타입이 다른 데이터 타입으로 변하는 것
byte < short < int < long < float < double
( char )
➡➡➡➡➡➡➡➡자동변환➡➡➡➡➡➡➡➡
값의 표현 범위가 작은 타입이 표현 범위가 큰 타입으로 저장될 때 발생합니다.
자바 컴파일러에 의해 자동으로 형변환이 일어납니다. 형변환이 일어나도 결과는 같습니다
int a = 3;
byte b = (byte)a;
=> 강제 타입변환 후에도 a는 byte의 표현범위 이내이고
overflow가 없기에 원본데이터가 유지된다.
🥕 byte타입(1 byte) : -128 ~ 127
🥕 short타입(2 byte) : -32768 ~ 32767
🥕 char타입(2 byte) : 0 ~ 65535
=> 따라서 char타입과 byte, short타입간에는 자동형변환이 일어나지 않으므로 꼭! 강제 타입 변환을 해줘야한다.