자바에서 자동 형변환(또는 암시적 형변환)은 더 작은 데이터 타입에서 더 큰 데이터 타입으로 값을 변환할 때 자동으로 발생하는 형변환입니다. 이러한 형변환은 데이터 손실 없이 이루어집니다.
1. 자동 형변환의 규칙
- 더 작은 데이터 타입에서 더 큰 데이터 타입으로 값이 형변환됩니다.
- 데이터 손실이 없는 방향으로 형변환됩니다.
아래는 자동 형변환의 일반적인 규칙입니다.
1.1. 정수 데이터 타입
- byte → short → int → long
- char → int
- int와 long은 실수 데이터 타입으로 변환될 때 데이터 손실이 발생하지 않습니다.
1.2. 실수 데이터 타입
- float → double
2. 예제
2.1. 정수 데이터 타입
byte b = 10;
short s = b; // byte에서 short로 자동 형변환
int i = s; // short에서 int로 자동 형변환
long l = i; // int에서 long으로 자동 형변환
2.2. 실수 데이터 타입
float f = 3.14f;
double d = f; // float에서 double로 자동 형변환
3. 주의사항
1. 자동 형변환은 더 작은 데이터 타입에서 더 큰 데이터 타입으로의 변환에서만 발생합니다. 역방향 변환은 명시적 형변환을 사용해야 합니다.
2. 데이터 손실이 없는 경우에만 자동 형변환이 발생합니다. 예를 들어, int에서 long으로 형변환할 때 데이터 손실이 발생하지 않으므로 자동 형변환이 발생합니다.
3. 정수에서 실수로의 형변환에서는 데이터 손실이 발생하지 않습니다. 그러나 실수에서 정수로의 형변환에서는 소수점 이하의 데이터가 손실될 수 있으며, 이때 명시적 형변환을 사용해야 합니다.
자동 형변환은 자바에서 타입 변환을 더 편리하게 만들어주는 중요한 개념입니다. 이를 통해 다양한 데이터 타입을 조합하여 프로그램을 작성할 때 편리하게 사용할 수 있습니다.
With ChatGPT
'JAVA > 포스팅' 카테고리의 다른 글
자바 산술 연산자 (Arithmetic Operators) (0) | 2023.11.01 |
---|---|
자바 연산자와 피연산자 (0) | 2023.11.01 |
자바 정수형과 실수형간의 형변환 (0) | 2023.10.31 |
자바 데이터 타입별 형변환 (0) | 2023.10.29 |
자바 형변환 (0) | 2023.10.29 |