java공부

자바/java Casting 형변환

이쟤키 2021. 7. 16. 03:13
반응형

자동 형변환

크기가 작은 타입에서 큰 타입으로 자동 형변환

int m = 10; // int -> double = 10 -> 10.0
double n = 3.0;
System.out.println(m / n); // 3.33333333

명시적 형변환

형변환 코드가 필요

데이터 손실이 있을 수 있음

int num = (int) 3.7;
System.out.println(num); // 3 데이터 손실

예외사항

int보다 작은 byte, short, char는 산술연산시 자동으로 int로 형변환 처리된다.

byte a = 100;
byte b = 10;
byte result = a + b; // 오류 int + int = int
그러므로
byte result = (byte)(a + b);

char 타입에 int를 대입 가능하다.(자동 형변환)

char ch = 97; // char = int
System.out.println(ch); // a