본문 바로가기
프로그래밍/자바(Java)

[Java]자바 형변환(명시적 형변환, 암시적 형변환)이란?

by imfireguy 2023. 3. 11.
반응형

자바 형변환 

자바에서는 다양한 데이터 타입을 제공하며, 이를 변환하는 방법을 제공합니다. 여기서는 자바에서의 형변환에 대해 알아보도록 하겠습니다.

자바에서는 두 가지 유형의 형변환이 존재합니다.

1. 암시적 형변환 (자동 형변환)
2. 명시적 형변환 (강제 형변환)

암시적 형변환 (자동 형변환)

암시적 형변환은 작은 데이터 타입의 값을 큰 데이터 타입으로 자동으로 변환하는 것입니다. 자바에서는 데이터의 손실 없이 안전하게 변환이 가능하기 때문에 자동으로 형변환이 이루어집니다.

 

int num = 10;
double dnum = num; // int 타입 값을 double 타입으로 암시적 형변환
System.out.println(dnum); //10.0

위의 예시에서는 정수형 변수 num을 double형 변수 dnum으로 암시적 형변환을 수행하였습니다. 이 때 소수점 이하를 표시할 수 있도록 double형으로 변환되어 출력됩니다.

 

명시적 형변환 (강제 형변환)

명시적 형변환은 큰 데이터 타입을 작은 데이터 타입으로 변환하거나, 두 가지 데이터 타입이 자동 변환될 수 없을 때 직접 지정하여 변환하는 것입니다. 이 때 데이터의 일부 정보가 손실될 수 있으므로 주의가 필요합니다. 명시적 형변환은 캐스팅(casting) 연산자를 사용하여 수행됩니다.

 

double dnum = 10.5;
int num = (int) dnum; //double 타입 값을 int 타입으로 명시적 형변환
System.out.println(num); //10

위의 예시에서는 double형 변수 dnum을 int형 변수 num으로 명시적 형변환을 수행하였습니다. 이 때 (int) 캐스팅 연산자를 사용하여 double형에서 int형으로 형변환이 수행되었습니다.

명시적 형변환을 수행할 때에는 데이터의 일부가 손실될 가능성이 있기 때문에 주의가 필요합니다. 또한 형변환을 잘못 수행하면 컴파일 에러나 런타임 에러가 발생할 수 있으므로 반드시 올바르게 사용하여야 합니다.

이상으로 자바에서의 형변환에 대해 알아보았습니다. 감사합니다!

 

반응형

댓글