
정수와 같은 기초 자료형을 객체로 포장하고 싶은 경우, 랩퍼 클래스(Wrapper Class)를 사용한다.
랩퍼 클래스는 여러 가지 유용한 메소드를 제공한다.
특히, 저장된 값을 다른 자료형으로 변환하는 메소드를 제공하기도 한다.
// 객체를 매개변수로 받는 경우
public void setValue (Integer i) {...}
// 반환 값이 객체인 경우
public Integer returnValue() {...}
Wrapper 클래스의 종류는 다음과 같다.
기본형 | Wrapper 클래스 |
boolean | Boolean |
byte | Byte |
char | Character |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
대표적인 Integer 클래스를 통해 Wrapper 클래스를 이해해 본다.
// 특정 정수를 매개 변수로 받는 경우
Integer (int value) {...}
// 특정 문자열을 매개 변수로 받는 경우
Integer (String s) {...}
(1) intValue( )
Integer 클래스 내부의 int 자료형 값을 가져온다.
Integer iValue = new Integer(100);
// int 값 가져오기, myValue 값을 출력하면 100이 출력된다.
int myValue = iValue.intValue();
(2) valueOf( )
생성자를 사용하지 않고 정수나 문자열을 바로 Integer 클래스로 반환할 수 있다.
Integer num1 = Integer.valueOf(100);
Integer num2 = Integer.valueOf("100");
(3) parseInt( )
문자열 → 정수
int num = Integer.parseInt("100");
(4) toString( )
정수 → 문자열
String s = Integer.toString(100);
(5) auto-boxing (오토박싱)
기본형을 객체형으로 바꾸는 것을 오토박싱(autoboxing), 반대로 객체형을 기본형으로 꺼내는 것을 언박싱(unboxing)이라고 한다.
Integer obj;
// 정수 -> Integer 객체 (오토박싱)
obj = 100;
// Integer 객체 -> 정수 (언박싱)
System.out.println(obj+i);
'BACKEND > Java' 카테고리의 다른 글
[Java] Class 클래스 (0) | 2022.09.28 |
---|---|
[Java] 근의 공식 (0) | 2022.09.26 |
[Java] 문자 ↔︎ 아스키코드 (0) | 2022.09.24 |
[Java] 문자열 ↔︎ char 배열 (0) | 2022.09.24 |
[Java] String 클래스 (0) | 2022.09.23 |