Int와 Integer를 평소에 잘 사용하지만 차이를 모르겠어서 찾아보았다.
Int
- primitive 자료형(long, float, double 등..), 데이터 타입
- 산술연산 가능
- null로 사용 안됨
Integer
- Wrapper 클래스(객체)
- 산술연산 불가능
- null 처리가 가능하므로 SQL과 연동하여 사용하기 용이
여기서 Wrapper 클래스란?
>> java는 데이터로서 클래스와 객체 외에 기초(primitive) 타입을 가진다. 그렇기 때문에 기본형 타입(primitive 자료형)과 객체 참조(클래스) 같은 두 가지 타입의 관리 데이터를 가진다. 경우에 따라서 기본형 타입을 객체로 사용하는 경우가 있으며, 이러한 경우 기본형 타입 값을 객체로 표현해야 한다.
이 때, Wrapper 클래스를 사용하는데 특정 기본형 타입으로 나타낸다. 예를 들어 Integer 클래스는 간단한 정수 값을 나타내며 객체는 하나의 int값을 저장할 수 있다.
음 개념을 읽으면 어려운데..
객체타입으로 다양한 메소드를 사용할 수 있다고 보면 된다.
한 가지 꼭 알아둘 건 null을 사용하기 위해서는 Integer를 사용해야 한다는 것이다.
Int는 데이터 타입이라 null로 초기화 할 경우 에러가 날 수 있다. 또한 Int형은 리스트로 사용이 불가능하다는 것이다.
자주 쓰는 Integer 함수도 알아두자
valueOf()와 parseInt()의 차이
- Integer.valueOf(String) : Integer 클래스를 리턴하기 때문에 산술 연산을 할 수 없다.
- Integer.parseInt(String) : int형을 리턴하기 때문에 산술 연산을 할 수 있다.
'Java' 카테고리의 다른 글
[Java] Arrays 클래스 사용법 (0) | 2022.09.22 |
---|---|
[Java] StringBuffer와 StringBuilder 개념과 사용법 (0) | 2022.09.20 |
[Java] HashMap 사용법 (0) | 2022.09.13 |