728x90
오토박싱(auto boxing)
- 원시 타입의 데이터를 해당 타입의 래퍼 클래스의 객체로 변환하는 것
- JDK 1.5 이후에 자동으로 변환된다.
int n = 5;
Integer i = n;
오토언박싱(auto unboxing)
- 래퍼클래스를 원시 타입으로 변환하는 것으로, 래퍼 클래스는 언박싱을 해야 산술 연산이 가능하다.
- JDK 1.5 이후에 자동으로 변환된다.
Integer i = 5;
int n = i;
Integer[]로 생성된 리스트에 int 타입의 데이터를 넣지 못하는 이유
// 리스트 생성
ArrayList<Integer> intList = new ArrayList<>();
ArrayList<Integer[]> intArrList = new ArrayList<>();
// 변수 생성
int a = 1;
int[] b = {1, 2, 3};
Integer[] c = {1, 2, 3};
// 리스트에 요소 추가
intList.add(a); // auto boxing이므로 자동 변환
intArrList.add(b); // 배열은 auto boxing이 안되므로 오류 발생
intArrList.add(c); // 정상
728x90
'[JAVA] > JAVA 기본' 카테고리의 다른 글
import 문, static import 문 (0) | 2023.02.27 |
---|---|
[JAVA] 다형성 (0) | 2023.02.10 |
[JAVA] break 문과 continue 문 (0) | 2022.09.28 |
[JAVA] 재귀 함수 (0) | 2022.09.20 |
[JAVA] static 키워드 (1) | 2022.09.19 |