형변환(casting) : 변수 또는 상수의 타입을 다른 타입으로 변환하는 것
형변환 방법 : (타입) 피연산자
ex) double d = 85.4;
int score = (int) d; // score에 85를 저장
피연산자인 변수 d의 값은 형변환 후에도 변화 x
괄호() : 캐스트 연산자(형변환 연산자)
기본형(primitive type)에서 boolean을 제외한 나머지 타입들은 서로 형변환이 가능
(기본형과 참조형간의 형변환은 불가능)
정수형간의 형변환
큰 타입에서 작은 타입으로 변환할 경우 값 손실이 발생할 수 있음
반대로 작은 타입에서 큰 타입으로의 변환은 값 손실이 발생하지 않음
(나머지 빈공간은 0(양수일 시) 또는 1(음수일 시)로 채워진다)
실수형간의 형변환
작은 타입에서 큰 타입으로 변환하는 경우, 빈 공간을 0으로 채움
float 타입의 값을 double 타입으로 변환하는 경우 지수(E)는 float의 기저인 127을 뺀후
double의 기저인 1023을 더해서 변환하고 가수(M)는 float 의 가수 23자리를 채우고
남은 자리를 0으로 채움
'Backend > Java' 카테고리의 다른 글
자바의 정석 정리(12) - 연산자 (0) | 2022.05.26 |
---|---|
자바의 정석 정리(11) - 형변환 ② (0) | 2022.05.25 |
자바의 정석 정리(9) - 실수형 (0) | 2022.05.23 |
자바의 정석 정리(8) - 정수형 (0) | 2022.05.22 |
자바의 정석 정리(7) - 아스키와 유니코드 (0) | 2022.05.20 |