Wrapper

Tech/Java 2022. 12. 10. 09:04
728x90
728x90

Wrapper


- 기본 타입의 데이터를 객체로 취급해야 하는 경우 사용한다

- 래퍼클래스는 인스턴스에 저장된 값을 변경할 수 없다

※ Integer / Character 클래스는 기본 타입과 이름이 다르다

 

기본타입 래퍼 클래스
byte Byte
short Short
int Integer
long Long
flot Float
double Double
char Character
boolean Boolean

 

Boxing & Unboxing


 - Boxing : 기본 타입의 데이터를 래퍼 클래스의 인스턴스로 변환하는 과정

 - Unboxing :반대로 인스턴스에 저장된 값을 기본 타입의 데이터로 꺼내는 과정

Integer num = new Integer(1); // 박싱
int n = num.intValue();        // 언박싱
System.out.println(n);


// 오토 박싱 / 언박싱
// JDK 1.5부터는 박싱과 언박싱이 필요한 상황에 컴파일러가 자동으로 처리해준다
Character ch = 'A'; // Character ch = new Character('A'); 오토박싱
char c = ch;        // char c = ch.charValue();           오토언박싱
System.out.println(c);

Console
1
A
// == 연산자를 사용하게 되면 주소값을 비교한다
// ㅡ> equals를 사용
Integer num1 = new Integer(1);
Integer num3 = new Integer(1);

System.out.println(num1==num3);
System.out.println(num1.equals(num3));

// Console
false
true
728x90
300x250
mag1c

mag1c

2년차 주니어 개발자.

방명록