프로그램을 작성하다 같은 타입이 아니라 서로 다른 타입간의 연산을 수행하는 경우 타입을 일치 시켜야한다.
이떄 변수나 리터럴의 타입을 다른 타입으로 변환 하는 것을 형변환(casting)이라고한다.
(타입) 피연산자
위와 같이 형변환 하고자 하는 변수나 리터럴이 앞에 변환하고자 하는 타입을 괄호와 함꼐 붙여주기만 하면 된다.
여기에 사용되는 괄호()는 캐스트 연산자 또는 형변환 연산자라고 하며, 형변환을 캐스팅이라고 한다.
double d = 85.4;
int score = (int) d;
실수형은 정수형보다 훨씬 큰 저장범위를 갖기때문에 정수형을 실수형으로 저장되는 것은 별무리가 없다.
float는 7자리의 정밀도를 가지고 double은 15자리의 정밀로를 가지기 때문에 8자리 이상의 정수형은 double로
형변환을 해야 오차가 생기지 않는다
실수형을 정수형으로 변환하면 실수형의 소수점이하 값은 버려진다.
ex) 1.666 --> 1
만약 실수의 소수점을 버리고 남은 정수가 정수형의 저장범위를 넘는 경우에는 정수의 오버플로우가 발생한 결과를 얻는다.