728x90
boolean을 제외한 기본 타입 7개는 서로 타입을 변환할 수 있다
자동 타입 변환
1. 바이트 크기가 작은 타입에서 큰 타입으로 변환할 때 ex) byte -> int
2. 더 정밀한 타입으로 변환할 때 ex) 정수 -> 실수
// 괄호안은 크기
byte(1) -> short(2)/char(2) -> int(4) -> long(8) -> float(4) -> double(8)
* float은 4byte이지만 int와 long보다 더 정밀하기 때문에 뒤쪽에 있다
// float이 long보다 정밀하므로, 자동으로 타입이 변환
long longValue = 12345L;
float floatValue = longValue;
System.out.println(floatValue); // 12345.0 출력
수동 타입 변환
더 작은 데이터 타입의 변수에 저장하려면 수동으로 타입을 변환해야 함
이를 캐스팅(casting) 이라고 함
수동 타입 변환 시, 캐스팅 연산자 () 를 사용
//int 타입으로 선언된 변수 intValue를 더 작은 단위인 byte로 변환
int intValue = 128;
byte byteValue = (byte)intValue;
System.out.println(byteValue); // -128(오버플로우 발생)
728x90
'개발일지 > Java' 카테고리의 다른 글
Java String 클래스의 메서드 (0) | 2022.09.04 |
---|---|
Java 문자열(String) (0) | 2022.09.04 |
Java 타입 (0) | 2022.09.04 |
Java 변수, 상수 (0) | 2022.09.04 |
Java (0) | 2022.09.04 |