-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
명시적 형변환
19.01.21 05:28 작성 조회수 115
0
int iVAr = 123456;
byte bVar = (byte)iVar;
System.out.println("bVar = " +bVar);
을 돌리면 bVar = 64 가 나오는 계산 과정이 이해가 안돼요ㅜㅜ
byte가 지원되는 숫자가 +- 128 까지라 이 이상의 숫자는 짤린다는건 알겠는데
어떤 계산과정을 거쳐서 '64'라는 숫자가 도출되는지 아시는 분 있으면 답변 부탁드려요
답변을 작성해보세요.
0
이형주
2019.01.21
저도 배우는 입장으로 한 말씀 올립니다.
예문의 구문 중 byte bVar = (byte)iVar; 을 지우고
int iVAr = 123456;
System.out.println("iVar = " +iVar);
을 입력하게 되면 123456이 표시되는데요.
byte를 추가한 예문처럼 입력하게 되면 byte는 표시값이 int에 비해 적어
값이 지원가능한 값 제외 모두가 날라가게 되어 그렇게 표시되는 거라네요.
답변 1