1. 피연산자들이 모두 정수 타입이고 int 타입(4byte)보다 크기가 작은 타입일 경우 모두 int 타입으로 변환후 연산을 수행한다.
2. 따라서 연산의 산출 타입은 int 다.
3.(long 타입이 있을 경우 long타입으로 변환후 연산 수행 하여 산출 타입이 long)
4. double이 있을 경우 double로
ex)
byte bValue = 10;
byte result = bValue + bValue; // 컴파일 에러(x)
int result = bValue + bValue; // O
정수 타입 연산의 결과가 int 타입으로 나오는 이유?
자바 가상 기계(JVM)가 기본적으로 32비트 단위로 계산하기 때문
char c1 = 'A' + 1;
char c2 = 'A';
char c3 = c2 +1; // 컴파일 에러
char c3 = (char) c2 +1;
'막 저장하는 모르는 부분들' 카테고리의 다른 글
기본 타입 최댓값과 최솟값 (0) | 2022.10.10 |
---|