형 변환(type casting) 이란?
형변환(type casting)은 프로그래밍에서 하나의 데이터 타입을 다른 데이터 타입으로 변환하는 과정을 말합니다. 형변환은 크게 두 가지 유형으로 나눌 수 있다 .--------->암시적 변환과 명시적 변환으로 나눈다.
쉽게 설명하자면 암시적은 자동 형 변환이라고 생각하며 쉽고,
명시적은 강제 형 변환이라고 생각하면 좋다.
package cho2;
/**
* 형 변환이란?
* 데이터의 타입을 다른 타입으로 변경하는것
* 자동 형변환 , 강제 형 변환
*/
public class TypeConversion {
//코드의 진입점
public static void main(String[] args) {
// 1. 자동 형 변환 확인 하기
int intDataBox = 50;
System.out.println(intDataBox);
// 자연스럽게 형 변환 (자동 형 변환) - 작은 상자에서 큰 상자로는 자동 형 변환 된다.
double doubleDateBox = intDataBox;
System.out.println(doubleDateBox);
// 2. 강제 형변화 확인 하기
final double PI = 3.14159;
//int intBox = PI; // 컴파일 시점에 오류 발생
// 개발자가 컴파일러에게 "컴파일러야 괜찮으니깐 그냥 넣어"
// 데이터 손실이 발생 할 수 있지만 괜찮아!
// 강제 형 변환
int intBox = (int) PI;
//데이터 손실이 발생 했다.(소수점을 그냥 버림)
System.out.println(intBox);
// intBox --->3
//연습
double interestRate;
int discount;
interestRate = 15.5;
//4바이트 상자에 8바이트 상자를 넣을려고 하니깐 컴파일러가 이거 오류 발생해!
discount = (int) interestRate;// 강제 형 변환
System.out.println(discount);
//응용
System.out.println((int) 7.5); //강제 형 변환
System.out.println((int) 0.1234);//강제 형 변환
}// end of main
} // end of class
연습하기
package execise;
public class TypeConversionExercises {
public static void main(String[] args) {
int a = 300;
double b = a;//자동 형 변환 (작은 상자에서 큰 상자로 자연스럽게 들어 간다.// )
// b를 콘솔에 출력한다면?
System.out.println(b);
//문제
double c = 5.67;
int d = (int)c;
//문제
float floatNum = 4.5f;
int intNum = (int)floatNum;
System.out.println(intNum);
//문제
double largeValue = 150.75;
byte byteValue =(byte) largeValue;
System.out.println(byteValue);
}
}
'JAVA(기본)' 카테고리의 다른 글
(JAVA)연산자 (산술) (0) | 2025.04.10 |
---|---|
(JAVA) 연산자(항, 대입, 부호) (0) | 2025.04.10 |
(JAVA) 상수(constant) (0) | 2025.04.10 |
(JAVA)데이터 타입이란? (0) | 2025.04.10 |
(JAVA)Intellij에서 사용한 java언어 (0) | 2025.04.09 |