728x90
- 기억나는대로 간략히 적음.
- 오토박싱
- int -> Integer 로 변경해주는것(기본형을 래퍼클래스로) 근데 이를 자동으로 해주는 것
- 언박싱
- Integer -> int 형으로 변경해주는것.(래퍼클래스를 기본형으로) 근데 이를 자동으로 해주는 것
- JDK 1.5 버전부터 나옴.
- 기본형 + 참조형을 실행하면 컴파일되면서 코드를 알아서 변경해준다.
- 간단한 예제.(모던 자바 인 액션)
List<Integer> list = new ArrayList<>();
for (int i = 300; i < 400; i++) {
list.add(i); //이 부분 오토박싱됨.
//list.add(new Integer(i));
}
int integer = list.get(0); //오토언박싱
//Integer integer = list.get(0);
- 오토박싱되며, 아래 주석처럼 넣어줘야하지만, 알아서 오토박싱되어 아래와 같이 컴파일러가 코드를 변경하고, 값이 에러없이 잘 들어간다.
- get 할경우 주석과같이 참조형을 쓰지않아도 값을 가져온다. => 컴파일러가 intValue()를 호출하도록 코드를 오토언박싱 해준다.
728x90
'Language > 자바' 카테고리의 다른 글
자바 람다 Supplier example (0) | 2023.02.02 |
---|---|
자바 접근지시자 (0) | 2023.01.29 |
자바 @FunctionalInterface 는 무엇인가? (0) | 2023.01.29 |
자바 시그니처? (0) | 2023.01.29 |
함수형 인터페이스 간략히 알아보자. (0) | 2023.01.29 |
댓글