java026-5

제로·2022년 9월 20일
0

Java basic

목록 보기
30/45
post-custom-banner

Wrapper

  1. 기본 타입(byte, char, short, int, long, float, double, boolean)값을 내부에 두고 포장하는 객체를 말한다. 객체로 전환되는 순간, 여러가지 기능 메서드가 지원되기에 데이터 변환이나 기능처리를 할 수 있기 떄문에 객체로 전환하여 사용한다.

  2. Wrapper class(포장 클래스)
    대부분은 기본유형타입에서 대문자로 시작하여 선언한다.
    ex) byte => Byte, short => Short, double => Double
    단, 아래 두가지만 긴 문자 형식으로 Wrapper클래스를 선언한다.
    char => Character, int => Integer

  3. Boxing과 Unboxing
    1) Boxing : 기본 타입의 값을 포장(Wrapper)객체로 만드는 과정을 말한다.
    Integer obj1 = Integer.valueOf(1000);
    Byte obj2 = Byte.valueOf(25);

    2) Unboxing : 포장 객체에서 기본 타입의 값을 얻어내는 과정
    byte value01 = obj2.byteValue();
    int value02 = obj1.intValue();

  4. autoBoxing, autoUnboxing
    위 기본 박싱과 언박싱을 거치치 않고, 바로 할당하는 것을 jvm에서 내부적으로 지원한다
    1) autoBoxing
    Integer obj1 = 30;
    Double obj2 = 30.25;

    2) autoUnboxing
    int num01 = obj1;
    double num02 = obj2;

// Boxing 처리
Byte obj01 = Byte.valueOf("25");
Integer obj02 = Integer.valueOf(30);
Double obj03 = Double.valueOf("30.8");
// 숫자형 문자열 또는 기본 데이터 유형이 Boxing에 의해 Wrapper클래스로 처리되었다

// autoboxing
// 기본 데이터 유형을 바로 할당할 때, autoboxing이 일어나서 객체로 사용된다.
Integer obj04 = 1000;
Double obj05 = 35.25;

ArrayList<Integer> iList = new ArrayList<Integer>();
iList.add(new Integer(25)); //박싱
iList.add(Integer.valueOf(30)); //박싱
iList.add(50); //오토박싱
profile
아자아자 화이팅
post-custom-banner

0개의 댓글