오토박싱

by 조쉬 posted Sep 13, 2016
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

오토박싱


컬렉션에는 객체로 저장해야하기 때문에 기본형 값을 저장하기 위해서는 Integer나 Long과 같은 Wrapper클래스를 사용해야 했다.

그러나 이제부터는 기본형 값을 직접 컬렉션에 저장할 수 있다. 컴파일러에 의해서 자동적으로 Wrapper클래스로 변환되어 저장되는데 이것을 오토박싱이라고 한다.

뿐만 아니라 저장된 값을 꺼낼 때도 변환과정을 거치지 않고도 기본형 형태의 값을 바로 얻을 수 있는데 이것을 언박싱이라고 한다.


ArrayList list = new ArrayList();

list.add(new Integer(10));

list.add(new Integer(20));

list.add(new Integer(30));

Integer i =(Integer)list.get(0);

int value = i.intValue();


이전에는 위와 같은 코드를 사용했지만 이제는 아래와 같이 코드를 간략히 할 수 있다.

ArrayList<Integer> list = new ArrayList<Integer>();

list.add(10);// 오토박싱

list.add(20);// 오토박싱

list.add(30);// 오토박싱

int value = list.get(0);// 언박싱