Language/Java

[JAVA] int vs Integer

Code.Dev_MH 2023. 1. 20. 18:00

1. int

  • primitive type(기본형)
  • 변수의 타입(data type, 자료형)
    • ex) int, char
    • 변수(Variable)
      • 값을 저장할 수 있는 메모리 상의 공간
    • data의 type에 따라 값이 저장될 공간의 크기와 저장형식을 저장한 것
  • 산술 연산 가능
  • null로 초기화 불가능

2. Integer

  • wrapper class(래퍼 클래스)
  • Unboxing 하지 않을 경우 산술 연산 불가능
  • null 값 처리 가능

2.1. boxing

  • primitive type -> wrapper class 변환 (int -> Integer)

2.2. Unboxing

  • wrapper class -> primitive type 변환 (Integer -> int)

3. valueOf() 와 parseInt() 차이

3.1 Integer.valueOf(String)

  • Integer 클래스를 리턴하기 때문에 산술 연산 불가능

3.2. Integer.parseInt(String)

  • int형을 리턴하기 때문에 산술 연산 가능
  • 정수로 파싱할 수 없는 String 파라미터로 전달할 경우 에러 발생
반응형