반응형
Wrapper Class란?
- 프리미티브 타입을 객체로 표현하는 데 사용되는 다음 클래스들의 통칭
- 프리미티브 타입: byte, short, int, long, char, float, double, boolean
- 클래스 이름: Byte, Short, Integer, Long, Character, Float, Double, Boolean
- 프리미티브 타입을 데이터를 감싸는 역할을 하는 Wrapper 클래스
예제1) Wrapper 클래스
class WrapperExample1 {
public static void main(String args[]) {
// wrapper 객체 생성 - Integer 객체를 생성한다.
Integer obj1 = new Integer(12);
Integer obj2 = new Integer(7);
// wrapper 객체 안에 있는 프리미티브 값을 가져온다 - Integer 객체 안에 있는 int 값들을 가져온다.
int sum = obj1.intValue() + obj2.intValue();
System.out.println(sum);
}
}
예제2) 문자열 파라미터를 받는 생성자
- 문자열 파라미터를 프리미티브 값으로 바꾸어서 wrapper 객체 안에 저장하는 생성자
public class WrapperExample2 {
public static void main(String[] args) {
int total = 0;
for (int cnt = 0; cnt < args.length; cnt++) {
Integer obj = new Integer(args[cnt]); // 명령평 파라미터로 받는 문자열을 가지고 Integer 객체를 생성
total += obj.intValue(); // Integer 객체 안에 있는 int 값을 가져온다.
}
System.out.println(total);
}
}
ui-MacBookPro:test $ javac WrapperExample2.java
ui-MacBookPro:src $ java test.WrapperExample2
0
ui-MacBookPro:src $ java test.WrapperExample2 10 20
30
ui-MacBookPro:src $ java test.WrapperExample2 100 200 300
600
반응형
'프로그래밍 언어 > Java' 카테고리의 다른 글
[Java] 객체의 직렬화 serialization & 역직렬화 deserialization (0) | 2019.09.23 |
---|---|
[Java] Java 라이브러리 탐색하기 / Java APIs (0) | 2019.09.18 |
[Java] LinkedList 클래스 / iterator 메소드 (0) | 2019.09.17 |
[Java] ArrayList 클래스 (0) | 2019.09.06 |
[Java] Object Class (0) | 2019.08.31 |