[JAVA] 자바의 형변환 : 자동 형변환과 강제 형변환
프로그래밍 중 데이터를 다루는데있어 메모리 또는 사용되어지는 형태 등에 따라 형변환이 일어난다.
이때 자동으로 형변환이 일어나는 경우를 자동형변환 이라고 하며, 강제로 변환을 시키는 경우를 강제 형변환이라고 한다.
자바의 형변환에 대해 조금 더 자세히 알아보자.
자바의 형변환
1. 자동형변환
- 작은 자료형에서 큰 자료형으로 이동할때 자동으로 형변환을 시켜준다.
byte a = 10;
int b = a;
2. 강제형변환
- 큰자료형에서 작은 자료형으로 이동할때 오류가 발생하는데 오류가 발생하지 않도록 강제적으로 형변환을 해주는 것
int a = 128;
byte b = a; //==> 에러발생
byte b = (byte)a; //==> 강제 형변환
127 + 1 로 계산됨 --> 따라서 -128이 나옴
정수보다는 실수가 더 큰 자료형이다.
=> byte 크기만 크다고 작은 자료형 혹은 큰 자료형을 구분하는 것이 아니다.
int <long<float<double
정수<실수
int a = 10;
float c = a;
long d = (long)c;
byte a = 10;
char b = a; //-------> 에러 -> 음수가 올 수 도 있으므로 캐스팅 해주어야함
char b = (char)a;
short c = b; //---- > 에러 -> b는 char형 이므로 표현할 수 있는 양수범위가 더 크므로
short c = (short)b;
byte a = -10;
char b=(char)a;
short c = (short)b;
'Public > 프로그래밍' 카테고리의 다른 글
[JAVA] 자바 기본 입출력 : System 클래스, 표준 입력 및 표준 출력 스트림, BufferedReader (1) | 2020.08.23 |
---|---|
[JAVA] 자바 연산자 : 최우선, 단항, 산술, 시프트, 관계, 비트, 논리, 삼항, 배정대입 (0) | 2020.08.22 |
[JAVA] 자바의 기본 자료형 : 논리 정수 실수 문자열 자료형 (0) | 2020.08.22 |
[tensorflow] 미국주식 테슬라 머신러닝으로 주가 예측하기 (6) | 2020.08.02 |
맥북(Mac OS) 아나콘다에서 텐서플로우 설치하기 (0) | 2020.08.02 |