728x90
1. 형변환과 형변환 연산자
형변환이란 말 그대로 형, 즉 기존 타입을 다른 타입으로 바꾸는 것이다. 이전 주제에서 다뤘던 형변환 연산자를 사용해 아래와 같이 수동으로 형변환을 할 수 있으며 자동으로 형변환이 되는 경우도 있다.
(타입) 피연산자
[예 1]
double rawScore = 83.7;
int score = (int) 83.7;
score에는 83이 저장되며 기존 rawScore에 저장된 값은 변함이 없다.
2. 형변환 규칙
이전 챕터 2. 변수에서 변수의 타입은 값의 타입과 일치해야 한다는 사실을 배웠었다. 그렇다면 변수의 타입과 값의 타입이 일치하지 않는 경우 어떤 일이 생길까? 우선 결론부터 말하자면 다음과 같다.
값의 손실이 발생하는 경우, 수동으로 형변환을 해주어야 한다.
반대로 값의 손실이 발생하지 않는 경우, 자동으로 형변환이 일어난다.
이를 정리하면 두 가지 경우로 나온다.
1. 변수 타입 > 리터럴 타입 (O) => 자동 형변환 발생
2. 변수 타입 < 리터럴 타입 (Error) => 수동 형변환 필요
큰 그릇에 적은 양의 국을 담으면 괜찮지만 작은 그릇에 많은 양의 국을 담으면 넘치기 때문에 국을 줄여야 한다고 생각하면 이해가 쉽다.
화살표 방향은 자동으로 형변환인 일어나지만 그 반대는 아니다. short와 char는 크기는 같지만 값의 범위가 다르기 때문에 자동 서로 간의 자동 형변환이 일어나지 않는다.
반응형
'자바 (Java) > 요약' 카테고리의 다른 글
Chpt. 4 조건문과 반복문 - 주제 2. 조건만 맞으면 반복 실행되는 반복문 (1) | 2023.10.21 |
---|---|
Chpt. 4 조건문과 반복문 - 주제 1. 조건에 맞는 코드만 실행되는 조건문 (1) | 2023.10.20 |
Chpt. 3 연산자 - 주제 1. 모든 연산자는 값을 리턴한다. (2) | 2023.10.19 |
Chpt. 2 변수 - 주제 2. 값은 기본형과 참조형으로 나뉜다. (2) | 2023.10.17 |
Chpt. 2 변수 - 주제 1. 변수의 선언과 저장 (0) | 2023.10.17 |