JAVA/포스팅

자바 오토박싱(auto-boxing)과 언박싱(unboxing)

짜집퍼박사(짜박) 2023. 11. 15. 15:35

오토박싱(auto-boxing)과 언박싱(unboxing)은 기본 데이터 타입과 그에 대응하는 래퍼 클래스 간의 자동 변환을 의미합니다. 이 기능은 Java 5부터 도입되었습니다.

 

1. 오토박싱 (Auto-boxing)

오토박싱은 기본 데이터 타입의 값을 자동으로 래퍼 클래스로 변환하는 과정입니다. 이는 대입 연산, 메서드 호출, 연산 등에서 발생할 수 있습니다.

// 예제 1: 대입 연산
int primitiveInt = 42;
Integer wrapperInt = primitiveInt;  // int를 Integer로 자동 변환 (오토박싱)

// 예제 2: 메서드 호출
void processInteger(Integer num) {
    // ...
}

processInteger(primitiveInt);  // int를 Integer로 자동 변환 (오토박싱)

 

2. 언박싱 (Unboxing)

언박싱은 래퍼 클래스의 값을 기본 데이터 타입으로 자동으로 변환하는 과정입니다. 이 역시 대입 연산, 메서드 호출, 연산 등에서 발생할 수 있습니다.

// 예제 1: 대입 연산
Integer wrapperInt = 42;
int primitiveInt = wrapperInt;  // Integer를 int로 자동 변환 (언박싱)

// 예제 2: 메서드 호출
int result = wrapperInt + 10;  // Integer를 int로 자동 변환 (언박싱)

이러한 오토박싱과 언박싱은 코드를 간결하게 만들어주고, 기본 데이터 타입과 래퍼 클래스 간의 혼합 사용을 더 편리하게 만들어 줍니다. 또한, 주로 컬렉션 프레임워크에서 사용되며, 코드 가독성을 높이고 프로그래머의 부담을 줄이는 데에 기여합니다.

 

With ChatGPT

'JAVA > 포스팅' 카테고리의 다른 글

자바 java.util.Random클래스  (0) 2023.11.15
자바 java.util.Objects클래스  (0) 2023.11.15
자바 래퍼(wrapper) 클래스  (0) 2023.11.15
자바 Math클래스  (0) 2023.11.15
자바 StringBuilder클래스  (0) 2023.11.15