기본 자료형과 Wrapper 클래스 간에는 서로 암묵적 형변환이 가능
int num = 100;
Integer wrapper = num;
Integer wrapper = new Integer(100);
int num = wrapper;
1과 "1"의 차이
: 기본 자료형과 문자열 데이터 간의 연산에서는 기본 자료형 데이터가 문자열로 변환된 후, 문자열 간의 연산으로 처리
int a = 1;
String b = "1";
System.out.println(a+b); // "11" (문자열)이 출력
사용자 입력값에 대한 연산
: 모든 프로그램 플랫폼에서 사용자의 입력값은 String으로 처리된다.
만약, 인터넷 뱅킹에서 2개의 계좌로 송금할 금액을 각각 입력하였을 때, 총 금액을 계산한다면 다음과 같이 처리
String money1 = "5000";
String money2 = "3000";
String total = money1 + money2;
/// 50003000
문자열 데이터를 기본 데이터 형으로 변환함
: Wrapper 클래스에는 기본 자료형의 모양을 띄고 있는 문자열 데이터를 실제 기본 자료형으로 변환시키는 기능이 포함되어 있음
자바에서의 Wrapper 클래스의 가장 큰 의미는 바로 이 부분임
String money1 = "5000";
String money2 = "3000";
int m1 = Integer.parseInt(money1);
int m2 = Integer.parseInt(money2);
System.out.println(m1 + m2); // 8000
package wrapperclass;
public class Main01 {
public static void main(String[] args) {
String a = "20";
String b = "3.14";
// wrapper 클래스의 가장 중요한 기능은 특정 데이터형의 모양을 하고 있는 문자열을 실제 데이터형으로 변환하는 기능
int num_a = Integer.parseInt(a); // 중요
float num_b = Float.parseFloat(b);
System.out.println(num_a);
System.out.println(num_b);
System.out.println("-----");
// 변환한 값은 사칙 연산이 가능
int v1 = num_a + 500;
float v2 = num_b + 500;
System.out.println("v1 = " + v1);
System.out.println("v2 = " + v2);
// 기본 데이터 형의 객체화
Integer i = new Integer(100);
// 기본 데이터 형과 객체화된 데이터는 서로 연산이 가능
int j = i + 300;
System.out.println("j = " + j);
}
}