AutoBoxing 오토박싱과 Unboxing 언박싱은
자바의 기본 데이터 타입과 그에 대응하는 래퍼 클래스간의 변환을 자동으로 처리하는 기능을 말한다.
AutoBoxing 오토박싱
기본데이터 타입을 해당하는 래퍼클래스로 자동변환하는 과정
// 정수형 기본 데이터 타입과 래퍼 클래스
int primitiveInt = 42;
Integer wrapperInt = primitiveInt; // 오토박싱 발생
Unboxing 언박싱
래퍼클래스의 기본 객체를 기본 데이터 타입으로 자동 변환하는 과정
// 정수형 기본 데이터 타입과 래퍼 클래스
Integer wrapperInt = 42;
int primitiveInt = wrapperInt; // 언박싱 발생
이러한것들이 어디에 쓰이는걸까?
생각보다 많다. 우리가 모르는새에 오토박싱과 언박싱은 계속해서 일어나고있다.
아래코드를 예로 들자.
객체를 저장할 수 있는 컬렉션에 int형이 객체형으로 자동으로 언박싱이 이루어진다.
List<Integer> numbers = new ArrayList<>();
numbers.add(10); // 오토박싱: int -> Integer
이러한 오토박싱과 언박싱은 자바의 편의성을 높여주고
형에 관한 개발자의 관심을 적게해 코드를 간결하게 작성할 수 있도록 도와준다.
'이론' 카테고리의 다른 글
BigInteger과 BigDecimal의 차이 (0) | 2023.12.26 |
---|---|
java.util.regex 정규식 패키지 (0) | 2023.12.26 |
Overflow 오버플로우 와 Underflow 언더플로우 (0) | 2023.12.14 |
String, StringBuffer, StringBuilder 클래스의 차이 (0) | 2023.12.08 |
java.lang패키지 : Object 클래스 (0) | 2023.12.08 |