ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java] int 와 Integer
    개발 지식 2022. 6. 30. 20:56

     

    부트캠프에서 본격적으로 spirng을 배우기 시작하기 시작했다.

     

    spring으로 실습을 진행하면서 많은 변수들을 int가 아닌 Integer로 선언을 했는데 여기서 궁금점이 하나 생겼다.

     

    Integer로 선언한건 int로 선언이 안되나? 왜 굳이 Integer로 선언을 하는거지?

     

    그래서 개념을 확실하게 하기 위해서 나름 혼자 정리를 해보았다.

     

     

    Int & Integer 

     

    일단 둘의 차이를 알아 보기전에 각자 어떤것을 의미하는지 알아보자

     

    1) Int

     

    int는 "값을 저장할 수 있는 메모리 상의 공간"인 변수의 타입(=자료형)이다.

     

    자료형(Data type)은 기본형(primitive type)과 참조형(referce type)으로 나뉘는데 

    int는 기본형에 속하고 int 외에도 boolean, char, long, double 등등이 있다.

     

     

    2) Integer 

     

    Integer는 int의 래퍼 클래스(wrapper class)라고 하는데 이는 기본형을 객체로 다루기 위해서 사용되는 클래스를 의미한다.

     

    char => Char, long => Long 같은 기본형들에는 대부분 래퍼 클래스가 존재한다.

     

     

    그럼 둘의 차이점은 무엇일까?

     

     

    int : data type

     

    1) null 값으로 초기화가 불가능하다.

    2) 다른 int와 함께 산술 연산이 가능하다.

     

    Integer : wrapper class

     

    1) null 값으로 초기화가 가능하다.

    2) 별도의 과정 없이는 산술 연산이 불가능하다.

     

    (별도의 과정은 unboxing == 래퍼 클래스를 기본형으로 바꾸는 것)

     

     

     

    ps. 어떻게 보면 가볍게 넘어 갈 수 있지만 개발자를 꿈꾸는 사람으로서 가볍게 넘어갈 수 있는것은 확실하게 구분 할 줄 알아야 한다고 생각해서 따로 정리를 해보았다.

     

     

    '개발 지식' 카테고리의 다른 글

    REST API  (0) 2022.08.09

    댓글

Designed by Tistory.