형변환(casting)
- 해당 데이터 값의 자료형을 다른 타입의 자료형으로 변환하는 것을 말함.
- 형변환은 boolean형을 제외한 7가지 자료형은 서로 형변환이 가능함.
1. 묵시적 형변환
- 자료형의 크기가 작은 데이터를 큰 자료형의 데이터에 저장.
- 이때는 형변환 작업을 안 해 주어도 된다.
2. 명시적 형변환
- 자료형의 크기가 큰 데이터를 작은 자료형의 데이터에 저장 시 문제가 생김, 이 때는 반드시 형변환 작업을 해 주어야 한다.
- 자료의 손실이 발생할 수가 있음.
파란색으로 박스표시 해 놓은 곳을 보면
num2에 빨간색 밑줄 표시가 되어있는데, 이는 컴파일 오류가 발생했음을 의미한다.
연산자인 num2는 int자료형(4바이트)인데,
피연산자인 by2는 byte자료형(1바이트)라, 그 값을 넣으려고 하니 초과되어 오류가 나는 것이다.
이 때 num2앞에 (byte)를 붙여주면 명시적 형변환이 일어난다.
by2가 당초 num2 값인 150이 나오지 않고
-106이 나왔다.
byte자료형(1바이트)의 범위는 (-2^7 ~ 2^7-1) 이기 때문에 이 안에 해당하는 값인 -106이 나오게 되었음.
* 형변환이 자주 일어나게 되면 프로그램이 느려질 수 있다!
'Back-End > Java' 카테고리의 다른 글
[Java] 연산자(operator) (0) | 2021.08.04 |
---|---|
[Java] 자료형(실수 자료형, 단일 문자형, 논리 자료형) (0) | 2021.08.04 |
프로그래밍 언어와 자바(Java)의 특징 및 개발환경 (0) | 2021.08.04 |
[Java] 제어문자, 이클립스 단축키 (0) | 2021.08.04 |
[Java] 변수(Variable), 기본 자료형 (0) | 2021.08.04 |
댓글