1. Wrapper Class
- Java는 데이터를 관리하기 위하여 기본 데이터 타입을 지원하지만, 클래스를 통해서 만들어진 객체를 통한 데이터 관리도 가능하다.
- 어떠한 상황에서는 기본 데이터 타입의 변수를 객체 형태로 사용해야 하는 경우가 있는데, 이때 기본형 타입을 객체로 포장할 필요가 있다.
- 포장 클래스(Wrapper Class)는 특정 기본형 타입을 나타내는 용도로 사용된다.
- Integer를 정말 많이 씀
- 초창기 Java언어는 기본 자료형의 연산보다도 Wrapper Class를 사용한 연산이 더 많이 이루어 졌으나, Java 언어가 발전함에 따라서 기본 자료형과 Wrapper Class 간에 연산에 차이가 없어졌다.
2. Wrapper Class 객체 만들기
- 각각의 Wrapper Class의 객체는 자신과 대응되는 기본 자료형의 데이터를 파라미터로 전달받는다.
int num = 1;
Integer Wrapper = new Integer(num);
3. Wrapper Class의 형변환
- 기본 자료형과 Wrapper Class 간에는 서로 암묵적인 형변환이 가능하다.
int num = 100;
Integer wrapper = num;
------------------------
Integer wrapper = new Integer(100);
int num = wrapper;
4. Wrapper Class의 static 데이터
- 모든 Wrapper Class는 Wrapper Class에 대응되는 자료형에 대해 static 데이터 형태로 최소값과 최대값을 가지고 있다.
int max = Integer.MAX_VALUE;
int min = Integer.MIN_VALUE;
5. 문자열 데이터의 형변환
- 1과 "1"의 차이점
-> 기본 자료형과 문자열 데이터 간의 연산에서는 기본 자료형 데이터가 문자열로 변환된 후, 문자열 간의 연산으로 처리된다.
int a = 1;
String b = "1";
System.out.println(a + b);
- 사용자 입력값에 대한 연산
-> 모든 프로그램 플랫폼에서 사용자의 입력값은 String으로 처리된다.
-> 만약, 인터넷 뱅킹에서 2개의 계좌로 송금할 금액을 각각 입력하였을 때,
총 금액을 계산한다면 다음과 같이 처리될 것이다.
String money1 = "5000";
String money2 = "3000";
money1 + money2 = "50003000";
- 문자열 데이터를 기본 데이터 형으로 변환하기
-> Wrapper Class에는 기본 자료형의 모양을 띄고 있는 문자열 데이터를 실제 기본 자료형으로 변환시키는 기능이 포함되어 있다.
오늘날의 Java에서 Wrapper Class의 가장 큰 의미는 바로 이 부분이다.
String money1 = "5000";
String money2 = "3000";
int m1 = Integer.parseInt(money1);
int m1 = Integer.parseInt(money2);
System.out.println(m1 + m2);