작성
·
724
0
궁금해서 구글링을 해봤는데... 흠.. 읽어도 잘 이해가 가지 않아서요... int는 변수에 사용하는 자료형이다 integer는 객체다 라는 차이는 알겠는데 박싱, 언박싱... 이게 잘 이해가 가지 않습니다...
답변 1
1
- 간단하게 박싱은 class 형태로 만드는 것이고, 언박싱은 primitive 형태로 만드는 것입니다. 아래는 언박싱 예시 입니다.
```java
Integer x = new Integer(3);
int y = x + 4; // x는 Integer 클래스임에도 불구 연산이 가능 -> 자동 언박싱
System.out.prinln(y);
```
- int는 그 갑 자체이기 때문에 아무런 기능이 없습니다.
- Integer는 클래스이기 때문에, 클래스가 가지는 특성을 포함합니다. 멤버 변수, 생성자, 함수 등이 존재하는 것이죠.
- Integer 클래스에 '.'을 찍어보시면 IDE에서 사용가능한 프로퍼티나 함수가 죽 등장합니다. int에는 없는 기능이죠.
- 사실 차이에 대한 질문을 이해하기 위해서는 클래스(참조 타입)과 원시 자료형의 차이가 무엇인지를 살펴보시는 것이 더 이해가 수월 할 수 있습니다.