[Java의 정석] 형변환

말하는 감자·2023년 10월 29일
0

Java의 정석

목록 보기
21/32
post-thumbnail

Chapter 02 변수(Varialbe)

5. 형변환

📌 형변환(캐스팅, casting)이란?

프로그램을 작성하다 보면 같은 타입뿐만 아니라 서로 다른 타입간의 연산을 수행해야하는 경우도 있다. 이럴 때는 연산을 수행하기 전에 타입을 일치시켜야 하는데, 변수나 리터럴의 타입을 다른 타입으로 변환하는 것을 '형변환(casting)'이라고 한다.

형변환이란, 변수 또는 상수의 타입을 다른 타입으로 변환하는 것

예를 들어 int타입의 값과 float타입의 값을 더하는 경우 먼저 두 값을 같은 타입으로 즉, 둘 다 float타입으로 변화한 다음에 더해야 한다.

📌 형변환 방법

형변환 방법은 형변환하고자 하는 변수나 리터럴의 앞에 변환하고자 하는 타입의 괄호와 함께 붙여주기만 하면 된다.

(타입)피연산자

여기에 사용되는 괄호()는 '캐스트 연산자'또는 '형변화 연산자'라고 하며, 형변환을 '캐스팅(casting)'이라고도 한다.

double d = 85.4;
int score = (int)d; // double타입의 변수 d를 int타입으로 형변환

두번째 줄의 연산과정을 단계별로 살펴보면 다음과 같다.

int score = (int)d;
➡️ int score = (int)85.4; // 변수 d의 값을 읽어 와서 형변환한다.
➡️ int score = 85; // 형변환의 결과인 85를 변수 score에 저장한다.

형변환 연산자는 그저 피연산자의 값을 읽어서 지정된 타입으로 형변환하고 그 결과를 반환할 뿐이다.
그래서 피연산자인 변수 d의 값은 형변환 후에도 아무런 변화가 없다.

기본형(primitive type)에서 boolean을 제외한 나머지 타입들은 서로 형변환이 가능하다.
그리고 기본형과 참조형간의 형변환은 불가능하다.


📑 원본 자료

  • Java의 정석(3판) [남궁 성/도우출판/2016]
profile
나는 말하는 감자다

0개의 댓글