java
이 튜토리얼에서는 예제를 통해 Java Wrapper 클래스에 대해 알아볼 것입니다.
Java의 래퍼 클래스는 기본 유형을 변환하는 데 사용됩니다(int
, char
, float
등) 해당 개체로.
8개의 기본 유형 각각에는 해당 래퍼 클래스가 있습니다.
기본 유형 | 래퍼 클래스 |
---|---|
byte | Byte |
boolean | Boolean |
char | Character |
double | Double |
float | Float |
int | Integer |
long | Long |
short | Short |
valueOf()
를 사용할 수도 있습니다. 원시 유형을 해당 개체로 변환하는 방법입니다.
class Main {
public static void main(String[] args) {
// create primitive types
int a = 5;
double b = 5.65;
//converts into wrapper objects
Integer aObj = Integer.valueOf(a);
Double bObj = Double.valueOf(b);
if(aObj instanceof Integer) {
System.out.println("An object of Integer is created.");
}
if(bObj instanceof Double) {
System.out.println("An object of Double is created.");
}
}
}
출력
An object of Integer is created. An object of Double is created.
위의 예에서는 valueOf()
을 사용했습니다. 기본 유형을 객체로 변환하는 메소드입니다.
여기서는 instanceof
을 사용했습니다. 생성된 개체가 Integer
인지 확인하는 연산자 또는 Double
입력 여부.
그러나 Java 컴파일러는 기본 유형을 해당 객체로 직접 변환할 수 있습니다. 예를 들어,
int a = 5;
// converts into object
Integer aObj = a;
double b = 5.6;
// converts into object
Double bObj = b;
이 프로세스를 자동 박싱이라고 합니다. . 자세한 내용은 Java autoboxing 및 unboxing을 참조하십시오.
참고 :Wrapper
을 사용하여 기본 유형을 래퍼 객체로 변환할 수도 있습니다. 클래스 생성자. 그러나 생성자의 사용은 Java 9 이후에 폐기됩니다.
객체를 기본 유형으로 변환하기 위해 해당 값 메소드(intValue()
, doubleValue()
등) 각 래퍼 클래스에 있습니다.
class Main {
public static void main(String[] args) {
// creates objects of wrapper class
Integer aObj = Integer.valueOf(23);
Double bObj = Double.valueOf(5.55);
// converts into primitive types
int a = aObj.intValue();
double b = bObj.doubleValue();
System.out.println("The value of a: " + a);
System.out.println("The value of b: " + b);
}
}
출력
The value of a: 23 The value of b: 5.55
위의 예에서는 intValue()
를 사용했습니다. 및 doubleValue()
Integer
를 변환하는 메소드 및 Double
개체를 해당 기본 유형으로 변환합니다.
그러나 Java 컴파일러는 객체를 해당 기본 유형으로 자동 변환할 수 있습니다. 예를 들어,
Integer aObj = Integer.valueOf(2);
// converts into int type
int a = aObj;
Double bObj = Double.valueOf(5.55);
// converts into double type
double b = bObj;
이 프로세스를 언박싱이라고 합니다. . 자세한 내용은 Java autoboxing 및 unboxing을 참조하십시오.
<시간>
// error
ArrayList<int> list = new ArrayList<>();
// runs perfectly
ArrayList<Integer> list = new ArrayList<>();
이러한 경우 래퍼 클래스는 기본 데이터 유형을 객체로 사용하는 데 도움이 됩니다.
// generates an error
int a = null;
// runs perfectly
Integer a = null;
참고 :원시 유형은 해당 객체보다 효율적입니다. 따라서 효율성이 요구되는 경우 항상 기본 유형을 권장합니다.
java
자바 작성기 클래스 이 자습서에서는 예제를 통해 Java Writer, 해당 하위 클래스 및 메서드에 대해 알아봅니다. Writer java.io 클래스 패키지는 문자 스트림을 나타내는 추상 슈퍼클래스입니다. Writer 이후 추상 클래스이므로 그 자체로는 유용하지 않습니다. 그러나 하위 클래스를 사용하여 데이터를 쓸 수 있습니다. 작가의 하위 클래스 Writer의 기능을 사용하려면 , 우리는 그 하위 클래스를 사용할 수 있습니다. 그 중 일부는 다음과 같습니다. BufferedWriter OutputStreamWriter
자바 InputStreamReader 클래스 이 자습서에서는 예제를 통해 Java InputStreamReader 및 해당 메서드에 대해 알아봅니다. InputStreamReader java.io 클래스 패키지를 사용하여 바이트 데이터를 문자 데이터로 변환할 수 있습니다. 추상 클래스 Reader을 확장합니다. . InputStreamReader 클래스는 다른 입력 스트림과 함께 작동합니다. 바이트 스트림과 문자 스트림 간의 브리지라고도 합니다. InputStreamReader 때문입니다. 입력 스트림에서 바이트를 문자로