s00jin 님의 블로그

자바 자료형 총정리 | 기본형, 참조형, 래퍼 클래스 본문

Java

자바 자료형 총정리 | 기본형, 참조형, 래퍼 클래스

s00jin 2025. 10. 22. 16:44

자바 자료형

  • 기본 자료형 (Primitive Data Type)
  • 참조 자료형 (Reference Data Type)
  • 래퍼 클래스 (Wrapper Class)

기본 자료형 | Primitive Data Type

변수가 “실제 값”을 가짐

타입 크기 표현 범위

  타입 크기 표현 범위
진위형 boolean 1bit true / false
문자형 char 2바이트 0 ~ 65,535 (유니코드)
정수형 byte 1바이트 -128 ~ 127
정수형 short 2바이트 -32,768 ~ 32,767
정수형 int 4바이트 -2,147,483,648 ~ 2,147,483,647
정수형 long 8바이트 약 ±9.22×10¹⁸
실수형 float 4바이트 약 ±3.4×10⁻³⁸ ~ ±3.4×10³⁸
실수형 double 8바이트 약 ±1.7×10⁻³⁰⁸ ~ ±1.7×10³⁰⁸

 

참조 자료형 | Reference Data Type

데이터가 저장된 “주소 값”을 가짐

실제 값 X, 객체를 참조하는 데이터 타입

 

대표적인 참조 자료형

  • String, ArrayList, HashMap, HashSet, LinkedList, Queue, Stack 등
  • String, 클래스, 인터페이스, 배열, 열거 타입 등

 

래퍼 클래스 | Wrapper Class

기본 자료형을 ‘객체 (Object)’로 다루기 위해 객체화 시키는 클래스

→ 기본 타입의 객체화

 

  기본 자료형 (Primitive Type)  래퍼 클래스 (Wrapper Class)
진위형 boolean Boolean
문자형 char Character
정수형 byte Byte
정수형 short Short
정수형 int Integer
정수형 long Long
실수형 float Float
실수형 double Double

 

박싱과 언박싱

출처 http://www.tcpschool.com/java/java_api_wrapper

 

박싱 (Boxing)

기본 타입 → 래퍼 클래스

// Java 1.5 이상 버전부터 오토 박싱이 적용된다
int primitiveInt = 1;
Integer wrapperInteger = primitiveInt;

// 수동 박싱 시
int primitiveInt2 = 2;
Integer wrapperInteger2 = Integer.valueOf(primitiveInt2);

 

언박싱(Unboxing)

래퍼 클래스 → 기본 타입

// Java 1.5 이상 버전부터 오토 언박싱이 적용된다
Integer integer1 = 1;
int primitiveInt = integer1;

// 수동 언박싱 시
Integer integer2 = 2;
int primitiveInt2 = integer2.intValue();

 

 

  기본 자료형 (Primitive Type)  래퍼 클래스 (Wrapper Class)  언박싱 (Unboxing)
진위형 boolean Boolean a.booleanValue()
문자형 char Character a.charValue()
정수형 byte Byte a.byteValue()
정수형 short Short a.shortValue()
정수형 int Integer a.intValue()
정수형 long Long a.longValue()
실수형 float Float a.floatValue()
실수형 double Double a.doubleValue()

 

추가 메모

제너릭 타입 내에서 사용 가능 여부
기본 자료형 X, 래퍼 클래스 O

null 초기화 가능 여부
기본 자료형 X, 래퍼 클래스 O

참조 자료형 변수는 null로 초기화 가능

래퍼 클래스는 불변(Immutable) 객체

 

 


참고 링크

https://adjh54.tistory.com/119