SMALL
안녕하세요, 코린이의 코딩 학습기 채니 입니다.
개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다.
☞ Wrapper
- 기본형을 객체화해주는 클래스
- 기본형을 감싼 참조형 클래스로, 기본형이 아닌 참조형으로만 처리가 가능한 경우 사용
- 기본형은 할 수 없는 null 표현 가능!
Byte b = 1;
Short s = 2;
Integer i = 3;
Long l = 4L;
Float f = 5.5f;
Double d = 6.6;
Boolean bool = true;
Character ch = '안';
boxing (기본형 → wrapper)
int n = 10;
Integer nNum = n;
대입 연산자를 사용할 시, 반드시 양 쪽의 자료형이 동일해야 합니다.
위와 같은 경우는 Integer 타입의 nNum에 int 타입인 10을 대입하여 양 쪽의 자료형이 상이합니다.
하지만 컴파일 오류는 발생하지 않습니다.
그 이유는 boxing처리를 자동으로 해주기 때문이죠.
//Integer nNum = n;
Integer nNum = Integer.valueOf(n)
Integer nNum = Integer.valueOf(n)
int 타입의 n을 Integer 타입으로 자동 처리 해주어 boxing 해주기 때문에 오류 발생이 없습니다.
unboxing (wrapper → 기본형)
Integer nNum = 10;
int m = nNum;
마찬가지로 int 타입의 m에 Integer 타입의 nNum을 대입하여 양 쪽의 자료형이 상이합니다.
하지만 이 경우에도 자동으로 unboxing 처리를 해주기 때문에 오류 발생이 없습니다.
//int m = nNum;
int m = nNum.intValue();
int m = nNum.intValue();
Integer 타입의 nNum을 int 타입으로 자동 처리 해주어 unboxing 해주기 때문에 오류 발생이 없습니다.
대입 뿐만 아니라 연산 처리에도 동일하게 자동 처리해줍니다.
int x = 10;
Integer y = 20;
System.out.println(x+y);
// x + y.intValue();
@콘솔출력값
30
LIST
'Java > Java' 카테고리의 다른 글
API) 시각 정보를 가져오는 Calendar, Date (0) | 2022.03.28 |
---|---|
API) String에서 기본형으로 변경, 기본형에서 String으로 변경 (0) | 2022.03.25 |
API) 문자열 값을 수정해주는 StringBuilder, StringBuffer (0) | 2022.03.25 |
API) 문자열을 구분해주는 split, StringTokenizer (0) | 2022.03.25 |
인터페이스) 인터페이스 클래스 (0) | 2022.03.25 |