티스토리 뷰
시스템에서 자동으로 하는 자동 변환(Up Casting), 개발자에 의해 강제로 하는 수동 변환 (Down Casting)
자료형 변환
Up Casting : 자료형 크기가 큰 쪽, 범위가 넓은 쪽으로 자동 변환되는 것을 형 확장이라고 하며 자동 변환되는 것이며. 범위 안에 있는 경우 자동 Casting 됩니다.
Down Casting : 자료형 크기가 작은 쪽, 범위가 좁은 쪽으로 자동 변환 되는 것으로 형 축소라 하며 개발자가 변환해 주어야 합니다.
수동 변환 방법 : (자료형) 객체
public class TypeCasting {
public static void main(String[] args) {
// 자동 변환
long valueLong = 10; // int -> long ( Up )
float valueFloat = 10; // int -> float ( Up )
double valueDouble = 10; // int -> double ( Up )
byte valueByte = 10; // int -> byte
short valueShort = 10; // int -> short
System.out.println("int -> long ( Up ) = " + valueLong);
System.out.println("int -> float ( Up ) = " + valueFloat);
System.out.println("int -> double ( Up ) = " + valueDouble);
System.out.println("int -> byte = " + valueByte);
System.out.println("int -> short = " + valueShort);
// 수동 변환
byte valueByteCasting = (byte) 100; // int -> byte ( Down )
int valueIntCasting = (int) 3.5; // double -> int ( Down )
float valueFloatCasting = (float) 3.5; // double -> float ( Down )
System.out.println("int -> byte ( Down ) = " + valueByteCasting);
System.out.println("double -> int ( Down ) = " + valueIntCasting);
System.out.println("double -> float ( Down ) = " + valueFloatCasting);
// 정수형은 작은 범위의 자료형으로 down Castring 하면 서쿨러 구조 임
byte valueByte128 = (byte) 128;
byte valueByte129 = (byte) 129;
byte valueByte_129 = (byte) -129;
byte valueByte_130 = (byte) -130;
System.out.println("(byte) 128 = " + valueByte128);
System.out.println("(byte) 129 = " + valueByte129);
System.out.println("(byte) -129 = " + valueByte_129);
System.out.println("(byte) -130 = " + valueByte_130);
}
}
소스 : https://github.com/hyomee/JAVA_EDU/blob/main/Variable/src/com/javavariable/TypeCasting.java
'Java > 기본' 카테고리의 다른 글
018. 자바 : 대입 연산자 (0) | 2022.03.06 |
---|---|
017. 자바 : 연산자 (0) | 2022.03.06 |
015. 자바 : 변수 구분 (0) | 2022.03.01 |
014. 자바 : 문자열 API (0) | 2022.03.01 |
013. 자바 : 참조자료형 : 문자열 (0) | 2022.03.01 |