ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • java :: 형변환 (캐스팅, casting)
    IT/Java & JSP & FW 2012. 2. 29. 11:55

    형변환이란?


    프로그램을 작성하다 보면, 서로 다른 타입의 값으로 연산을 수행해야 하는 경우가 자주 발생합니다.
    모든 연산은 기본적으로 같은 타입간에만 수행될 수 있으므로, 연산에 필요한 연산자가 다른 타입이라면 연산을 수행하기 전에 형변환을 통해 같은 타입으로 변환해주어야 합니다.

    형변환이란, 변수 또는 리터럴의 타입을 다른 타입으로 변환하는 것이다.



    형변환 방법


    (타입)피연산자


    기본형과 참조형 모두 형변환이 가능하지만, 기본형과 참조형 사이에는 형변환이 성립되지 않습니다.
    기본형은 기본형으로만 참조형은 참조형으로만 형변환이 가능합니다.

    int x = (int)70.463  // x에는 int형의 값인 70만 저장이 된다.

     

    기본형의 형변환


    8개의 기본형 중에서 boolean을 제외한 나머지 7개의 기본형 간에는 서로 형변환이 가능합니다.

    각 자료형 마다 표현할 수 있는 값의 범위가 다르기에 큰 자료형에서 범위가 작은 자료형으로 변환할 경우 값 손실이 발생할 수 있습니다.
    반대로 범위가 작은 자료형에서 큰 자료형으로 변환하는 경우에는 절대로 값 손실이 발생하지 않으므로 변환에 아무런 문제가 없습니다. 

    byte → short → int → long → float → double
    ddddddd
    char ㄱㄱㄱㄱ

     
    화살표방향으로의 형변환은 캐스트 연산자 생략이 가능합니다. 반대로 형변환이 필요한 경우에는 꼭 캐스트 연산자를 사용해야 합니다.


    요약

     
    ⊙  boolean을 제외한 나머지 7개의 기본형은 서로 형변환이 가능하다.
    ⊙  기본형과 참조형은 서로 형변환할 수 없다.
    ⊙  서로 다른 타입의 변수간의 연산에는 형변환을 하는 것이 원칙이지만, 값의 범위가 작은 타입에서 큰 타입으로의 형변환은 생략할 수 있다. 

    'IT > Java & JSP & FW' 카테고리의 다른 글

    java :: static 변수 및 메소드 활용  (0) 2012.03.13
    java 공부하기 좋은 싸이트  (0) 2012.03.07
    java :: 접근제어자  (0) 2012.02.28
    java :: jdbc-2  (0) 2011.12.30
    java :: JDBC 연동, SQL 연동 및 SQL 기초 설명  (0) 2011.12.29
Designed by Tistory.