Java - 형변환

Java 2015. 10. 10. 23:56

[형변환]

{자바 - 형변환}

형 변환(Type Conversion)


int 타입의 정수 200의 bit값은

00000000 00000000 00000000 11001000


실수 200.0을 컴퓨터에 저장하면 다음 bit로 저장이 된다.

01000011 01001000 00000000 00000000


서로 전혀 다른 bit값으로 저장되기 때문에

각각의 데이터를 더해주거나 연산을 하려고 하면

한쪽의 데이터 타입으로 맞춰주어야 함.

데이터 타입을 맞춘다는 것은 데이터 형식을 바꾼다는 것이고, 이것을 형 변환이라고 한다.

그리고 이러한 형변환을 자바는 프로그래밍의 편의성을 위해서 자동으로 해주기도 하는데

그걸 자동(암시적) 형 변환(implicit Conversion) 이라고 한다. : 암시적 형변환은 조금이라도 좀 더 프로그래밍을 편리하게 하기 위해서, 정보의 손실이 발생하지 않는다면 컴퓨터가 알아서 처리해주는.

double a = 3.0F;

float를 a에 넣을 때 double로 자동으로 바꿔주기 때문에 에러가 나지 않음.(이 때, 데이터의 손실이 없음.)

float a = 3.0;

오류가 발생함.

double이 더 많은 데이터를 표현할 수 있기에, double에서 float로 형변환을 하면 데이터 유실의 가능성이 있기 때문에, 변환하지 않음.

※자동 형 변환의 원칙은 표현범위가 좁은 데이터 타입에서 넓은 데이터 타입으로의 변환만 허용된다는 것이다.


정수 실수

____________________________    _______________

byte -> short -> int -> long -> float -> double

char

        ----

        문자


문자도 내부적으로는 숫자

char를 int로 형변환을 하게 되면 그 문자의 유니코드 값으로 변하게 됨.



{자바 - 명시적형변환} : 수동으로 하는 형 변환. 이를 명시적형변환(Explicit Conversion)이라고 한다.

'Java' 카테고리의 다른 글

Java - 비교와 Boolean  (0) 2015.10.10
Java - 연산자  (0) 2015.10.10
Java - 상수의 데이터 타입  (0) 2015.10.10
Java - 데이터 타입  (0) 2015.10.10
Java - 주석과 세미콜론  (0) 2015.10.10
Posted by 캬웃
,