기본 자료형 값을 객체로 쓰기 위해 있는 클래스
기본형 타입이 허용되지 않는 문법에 기본형 타입을 쓰기 위해서 사용 된다
다음과 같이 기본형 자료형에 대응하는 클래스들을 제공하고 있다
byte -> Byte
char -> Character
short -> Short
int -> Integer
long -> Long
float -> Float
double -> Double
boolean -> Boolean
public static void main(String[] args) {
Integer integer = new Integer(10); // 클래스니까 객체생성가능, 객체의 초기화값 입력하는방식
Integer integer1 = Integer.valueOf(10); // Integer 클래스에 valueof 라는 스태틱메소드를 사용
Character character = new Character(('d'));
Character character1 = Character.valueOf('f');
// Autoboxing
Integer integer2 =4; //바로 입력가능
new 키워드를 활용하여 객체 생성
valueOf()메서드를 활용하여 객체 생성 가능하다
2.1 Wrapper클래스에 valueOf 정적 메소드를 활용한다
기본 자료형 값을 바로 입력하여 객체 생성
3.1 Autoboxing이 적용되서 기본자료형 값을 객체로 생성해서 입력해준다
3.2 Wrapper클래스의 편의 기능
기본형 값을 Wrapper 클래스의 객체로 자동으로 변환시켜주는 것을 Autoboxing 이라고 한다
반대로 Wrapper 클래스의 객체를 자동으로 기본형 값으로 변환 시켜주는 것을 Unboxing 이라고 한다
public class WrapperClass {
public static Integer add(Integer x, Integer y){ // Autoboxing
return x+y; // Unboxing => 객체끼리 덧셈이 안되는데 자동으로 기본자료형으로 변형되서 계산
// return될때는 다시 출력형인 Integer로 Autoboxing이 이루어짐
}
public static void main(String[] args) {
System.out.println(add(4,2)) // 6
}
}
add의 입력된 int형 자료를 Autoboxing하여 Integer 객체를 생성해서 add의 파라미터 변수에 입력 한다
입력된 객체를 Unboxing하여 x+y의 연산을 한다
연산된 값을 다시 Autoboxing 하여 integer 객체로 반환한다
제너릭 타입 파라미터에는 참조형 자료만 올 수 있고 기본 자료형은 올 수 없지만 Wrapper 클래스를 활용하여 기본 자료형을 입력할 수 있다
public class WrapperClass {
public static <T> T bypass (T x){
return x;
}
public static void main(String[] args) {
bypass(5); //5 // autoboxing
}
문자열로 입력된 값을 기본자료형으로 활용해야 되는 경우 Wapper클래스를 통해 변환할 수 있다
Wrapper 클래스의 parse메서드를 활용하는 방법(제일 권장되는 방법)
int x = Integer.parseInt("100"); // pare+자료형 정적 메소드
기본자료형에 Wrapper 클래스 객체를 넣어서 Unboxing 하는 방법
int y = new Integer("100");
Wrapper 클래스+ valueOf 메서드 활용하기
int z = Integer.valueOf("200");