본문 바로가기
Language/자바

자바 오토박싱 & 언박싱

by 띵커베르 2023. 1. 29.
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

댓글