본문 바로가기

자바 기초

03. 형 변환

728x90

형변환

바꾸고자 하는 형(to)이 기존의 형(from)보다 넓은 데이터를 담을 수 있는 자료형일 경우 특별한 처리 없이 형을 변환

byte1 byte-128 ... 127
short2 byte-32,768 ... 32,767
int4 byte-2,147,483,648 ... 2,147,483,647
long8 byte-9,223,372,036,854,775,808 ... 9,223,372,036,854,775,807
float4 byte1.4023985 x 10^-45 ... 3.4028235 x 10^38
double8 byte4.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