기본형들의 객체형 포장 객체를
Wrapper Class라고 부릅니다.
Wrapper Class에는 Integer , Double, Long, Void, Boolean 등의 종류가 있습니다.
기본 자료형을 객체로 다루기 위해 사용하는 클래스이며
Java의 기본형은 값을 가지고 있는 객체 생성이 가능한데
기본형이 가지고 있는 값을 내부에 두고 그 위를 포장하는 방식입니다.
기본형을 래퍼클래스로 바꾸는 것을 Boxing이라고 하며
래퍼클래스를 기본형으로 바꾸는 것을 UnBoxing이라고 합니다.
Wrapper Class는 보통 아래와 같은 상황에서 사용합니다.
1. 객체가 클래스가 제공하는 method 사용할 때
2. 클래스가 제공하는 상수를 사용(MIN_VALUE, MAX_VALUE, ...)
3. 숫자, 문자로 형변환을 할 때 (★)
3번째 경우에 가장 많이 사용되기 때문에
이 부분을 살펴보려고 합니다.
double을 int형으로 바꿀때는 (double) 형변환을 사용하면 되지만
String 문자열을 int 정수로 바꿀 때는 괄호 형변환으로는 바뀌지 않습니다.
이때 Integer객체를 생성해서 값을 넣고 형변환을 해서
int형으로 return하는 방법이 있습니다.
String a1 = "100";
Integer b = new Integer(a1);
다음과 같이 문자열을 정수형 객체로 Boxing하고
b.intValue();
Value라는 기능을 사용해서 UnBoxing할 수 있습니다.
System.out.println(b.TYPE);
타입을 출력해보면
int
int형으로 형변환이 된 것을 확인할 수 있습니다.
알아서 UnBoxing을 해주는 기능도 있는데
Integer g = 10;
ing h = g;
이렇게 하면 언박싱이 자동으로 된다고 해서
Auto-UnBoxing 기능이라고합니다.
int h = 10;
Integer g = h;
반대로 사용하면
Auto-Boxing이 됩니다.
Boxing을 거치지 않고도정수형을 문자형으로 쉽게 바꾸는 기능이 있습니다.
String num1 = Integer.toString(321);
이렇게 정수형 객체에 toString기능을 사용하면
정수를 문자열로 바꿀 수 있습니다.
반대로 문자열을 정수로 바꾸려면
int k = Integer.parseInt(num1);
parseInt라는 것을 사용해서 형변환을 하고
int를 사용해서 UnBoxing을 하면
문자열이 정수로 바꿔서 k라는 변수에 저장이 됩니다.
double형은 parseDouble로 형변환을 하고
double형으로 언박싱하면 됩니다.
이번 시간에는
Wrapper Class에 대해서 알아보았는데요.
Wrapper Class가 제공하는 기능인
문자열을 정수형이나 실수형으로 바꾸는 부분은
특히 코딩테스트에서 많이 사용되기 때문에
사용 방법을 충분히 익히고 기억해야 될 것 같습니다.
'Java > 이론' 카테고리의 다른 글
[Java] String 기능 - 분리 (0) | 2024.12.17 |
---|---|
[Java] String 기능 (0) | 2024.12.17 |
[Java] Date (0) | 2024.12.16 |
[Java] 에러 핸들링 (0) | 2024.12.16 |
[Java] GUI(Graphical User Interface) (0) | 2024.12.16 |