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