[Java] int와 Integer의 차이
21 Aug 2023 - juno
string - int 변환 메소드를 살펴보다가 궁금해져서 찾아본 int와 Integer의 차이
1. int란
int는 변수의 타입(data type)이다.
변수란 “값을 저장할 수 있는 메모리 상의 공간”을 의미한다.
int i = 3;
cahr c = "j";
에서 i 와 j가 변수이다.
그리고 그 앞의 int, char이 변수의 type(자료형)을 지정해주고 있다.
즉, 이 변수의 type(자료형)은 “data의 type에 따라 값이 저장될 공간의 크기와 저장형식을 정의한것” 으로 볼 수 있다.
이러한 자료형은 기본형(primitive type)과 참조형(reference type)으로 나뉘는데
int나 char같은 자료형은 기본형에 속하는 것이다.
*참고(기본형의 종류)
2. Integer란
기본형 변수를 객체로 다루기 위해서 사용하는 클래스 = Wrapper class(래퍼클래스) 이다.
Integer는 int의 wrapper class 인 것이다.
이러한 wrapper class 를 사용하는 경우는
- 매개변수로 객체를 필요로 할 때
- 기본형 값이 아닌 객체로 저장해야 할 떄
- 객체 간 비교가 필요할 때
등이 있다.
모든 기본형은 wrapper class 를 생성할 수 있다.
*참고(기본형 -> 래퍼클래스)
3. int 와 Integer (Primitive type과 Wrapper class)의 차이점
int(Primitive type)
- 산술 연산 가능
- null로 초기화 불가능
Integer(Wrapper class)
- 산술연산 불가능 (기본형으로 변환 하여 할 수 있음)
- null 값 처리 가능