Int 와 Integer  JAVA / 學而時習之 

2011/05/19 14:01

복사http://changm00n.blog.me/60130280227

int는 자료형이고 Inter는 클래스.


이미 존재하는 int를 클래스로 만든 것은

자바가 oop 언어이기 때문에 사용자 편의성을 제공해준 것이라 볼 수 있다.


둘의 변환은 

int i = ii.intValue();

Integer ii = new Integer(i);

와 같이 할 수 있다.


자바 api 참조

The Integer class wraps a value of the primitive type int in an object. An object of type Integer contains a single field whose type is int.

In addition, this class provides several methods for converting an int to a String and a String to an int, as well as other constants and methods useful when dealing with an int.



Integer 을 사용하면 null 값 처리가 용이하기 때문에 sql 과 연동할 경우 편리한 면이 있지만,

직접적인 산술연산을 할 수 없다는 단점이 있다.


그 외의 기능상 차이는

http://mindprod.com/jgloss/intvsinteger.html

이곳에 잘 정의되어 있다.


뜬금없이 이것을 찾아본 이유는

Integer.valueOf(String) 와 Integer.parseInt(String) 의 차이 때문

Integer.valueOf(String) 를 사용하면 Integer 클래스로 리턴이 되기 때문에 산술 연산을 할 수가 없다.

그리고 위에 말한 바와 같이 Integer.parseInt(String) 는 int형을 리턴하니 null 값이 들어가선 안된다.
Integer.valueOf(String)하고 intValue()로 바꿔 연산하던지
Integer.parseInt(String)하기 전 null 값을 체크하던지 선택을 해야한다.
Posted by 커널제로

본 블로그는 페이스북 댓글을 지원합니다.

,