728x90
형변환
바꾸고자 하는 형(to)이 기존의 형(from)보다 넓은 데이터를 담을 수 있는 자료형일 경우 특별한 처리 없이 형을 변환
byte | 1 byte | -128 ... 127 |
short | 2 byte | -32,768 ... 32,767 |
int | 4 byte | -2,147,483,648 ... 2,147,483,647 |
long | 8 byte | -9,223,372,036,854,775,808 ... 9,223,372,036,854,775,807 |
float | 4 byte | 1.4023985 x 10^-45 ... 3.4028235 x 10^38 |
double | 8 byte | 4.940656458412465 x 10^-324 ... 1.797693134862316 x 10^308 |
int a = 36;
double b = a; // int to double
short c = 17;
long d = c; // short to long
float e = 3.14f;
double f = e; // float to double
타입 캐스팅 (Type Casting)
- 값(혹은 변수) 앞에 (자료형)(예: (int) x)을 적어주면 강제적으로 형을 변환
int a = 3;
double b = (double) a;
long c = (long) a;
- 더 큰 랭크의 값을 더 작을 랭크의 변수에 담는 것도 가능하지만, 데이터의 손실이 있다는 걸 주의
double pi = 3.14;
int myInt = (int) pi; // 데이터 손실 (소수 부분)
- 나누기 결과를 몫이 아닌 전체를 보고 싶을때
int a = 9, b = 5;
System.out.println((double) a / b); // 1.8
728x90
'자바 기초' 카테고리의 다른 글
05. 배열 생성 및 초기화 (0) | 2021.03.14 |
---|---|
04. 조건/분기문 (0) | 2021.03.14 |
02. 연산자 (0) | 2021.03.14 |
01. 변수 타입 및 선언 (0) | 2021.03.14 |