전공/JAVA

JAVA 자료형 , Promotion 과 Casting(형변환)

무한공백 2009. 8. 27. 15:22

형변환 이란?

서로 크기가 다른 변수를 대입하는 과정

 

각 데이터의 타입

자료형

데이터 타입 

 크기

범위 

 논리형 자료

boolean 

1byte 

 true or false

 정수형 자료

byte

1byte 

-128 ~ 127 

 

short 

2byte 

-32768 ~ 32767 

 

char 

2byte 

0 ~ 65535 

 

int

4byte

-2147483648 ~ 2147483647  

 

long

8byte

 

 실수형 자료

float

4byte

 

 

double

8byte

 

 클래스형 자료

ex) String etc..

 


 


 

아래와 같이 하면 각 데이터 타입별로 크기를 알 수 있다.

빼먹은 것이 있는데, boolean 과 char 의 크기는 Character.MIN_~ / Boolean.MIN 등으로 확인한다.

여기서 보면 Byte, Short, 기타 등등 이 나오는데 이런 클래스를 Wrapper Class 라 말한다.

 

결과 값


 

 

Promotion (묵시적 형 변환)

작은 데이터 타입에서 큰 데이터 타입으로 형변환 되는 것

자동 형변환

 

Casting(명시적 형 변환)

큰 데이터 타입에서 작은 데이터 타입으로 형변환 되는 것

명시적 형변환

단, boolean 자료형은 형변환이 불가능하다.

 

 

예제>

 

public class Exam {
 public static void main(String ar[])
 {
  int m = 300;
  long l = m; //자동 형변환 Promotion
  
  byte s = m; //에러 발생


  byte s1 = (byte)m; // 강제 형변환 Casting
 }
}