랩퍼 클래스(Wrapper class)
기본형(int, boolean, float, double)을 위해 자바클래스 라이브러리가 제공하는 클래스
랩퍼 클래스에 특정한 값을 대입해도 변경되지 않는다.
랩퍼 클래스에 포함 된 값을 수장하는 방법
- 값을 구한다.
- 값을 수정한다.
- 수정된 값을 사용해서 새로운 랩퍼 클래스를 생성한다.
랩퍼 클래스의 메서드 패턴
- xxxValue : 관련된 기본형 반환
- getxxx : 매개변수로 전달된 String값을 관련된 기본형으로 변환
- valueOf : 랩퍼 클래스의 인스턴스를 String값으로 변환
모든 랩퍼 클래스는 두개의 생성자를 제공한다.
- 관련된 기본형으로부터 클래스의 인스턴스를 만들기 위한 생성자
- 관련있는 기본형으로 변환될 문자열을 사용해 클래스의 인스턴스를 생성하기 위한 생성자
1) Boolean 클래스
생성자
- Boolean(boolean value) : value 매개변수를 Boolean 객체에 할당한다.
- Boolean(String s) : String 매개변수가 null이 아니거나 equal이면
true를 Boolean객체에 할당, 아니면 무시
2) Byte 클래스
생성자
- Byte(byte value) : 지정된 byte 값으로 Byte 객체를 초기화한다.
- Byte(String s) : String 매개변수로 지정된 값으로 Byte 객체를 초기화한다.
*10진수 값을 포함하는 byte 또는 String을 이용해 Byte랩퍼 클래스의 인스턴스를 생성할 수 있다.
*byte자료형은 다양한 방법으로 해석될 수 있기 때문에 Boolean보다 정교하다.
*byte값을 short, int, long, double로 변환하는 메서드를 제공한다.
*문자열 값이 어떤 진법으로 만들어진것인지 알면 String을 byte로 변환하는 기능도 가능.
*두개의 byte를 비교하는 메서드도 제공
3) Character 클래스
생성자
- Character(char value) : 매개변수 value를 사용해 Character객체를 생성한다.
*한 개의 문자만을 표현하기 때문에 문자열을 이용한 생성자가 필요하지 않다.
*문자는 유니코드로 표현하기 때문에 작업하기 어렵다.
*문자를 조작하는 메소드뿐만 아니라 문자의 자료형과 값을 테스트하기 위한 메소드를 제공한다.
4) Double 클래스
생성자
- Double(double value) : double 자료형 매개변수를 사용해 새롭게 Double 객체를 생성
- Double(String s) : String으로 표현된 double자료형의 값을 사용해 Double 객체를 생성
*Double을 다른 기본형으로 변환하고 비트구조를 수정하기 위한 메소드를 제공한다.
*Double 클래스에서 자료형을 변환하는 메소드를 사용할때 캐스팅 된다.
ㄴ넓은 자료형에서 좁은 자료형으로 변환될때 데이터를 잃을 수 있다.
5) Float 클래스
생성자
- Float(double value) : double을 float로 변환한 값을 이용하여 Float 객체를 생성
- Float(float value) : float 매개변수를 할당한 Float 객체를 생성
- Float(String s) : String으로 표현된 float형 실수를 사용해 Float객체를 생성
*float를 문자열로 변환하는 메소드뿐만 아니라 다른 기본 자료형으로 변환하는 메소드를 제공한다.
6) Integer 클래스
생성자
- Integer(int value) : int형 value를 이용하여 Integer객체를 생성
- Integer(String s) : String으로 표현된 값을 사용해 Integer객체를 생성
*[int↔String]로 변환하는 메소드뿐만 아니라 다른 기본 자료형으로 변환하는 메소드를 제공한다.
*10진수를 다른진수로 변환하는 진수변환 메소드를 제공한다.
7) Long 클래스
생성자
- Long(long value) : long형 value를 사용하여 Long객체를 생성
- Long(String s) : String에 의해 표현된 long형 정수를 할당한 Long 객체를 생성
*Integer클래스와 유사하다
*[long↔String]로 변환하는 메소드뿐만 아니라 다른 기본 자료형으로 변환하는 메소드를 제공한다.
*10진수를 다른 진수로 변환하는 진수변환 메소드를 제공한다.
8) Short 클래스
생성자
- Short(short value) : short형 value를 이용하여 Short 객체를 생성
- Short(String s) : String에 의해 표현된 short형 실수를 할당한 Integer객체를 생성
*short값을 사용한다는 것만 제외하면 Integer/Long클래스와 동일하다.