>  기사  >  Java  >  Java I/O 작업 - 래퍼 클래스 및 기본 클래스 변수

Java I/O 작업 - 래퍼 클래스 및 기본 클래스 변수

PHPz
PHPz앞으로
2023-09-14 10:45:03846검색

Java I/O 操作 - 包装类与原始类变量

Java 입출력(I/O) 작업은 다양한 유형의 데이터를 처리하는 데 중요한 역할을 하여 파일, 네트워크 연결, 표준 입력/출력 스트림과 같은 다양한 소스에서 읽고 쓸 수 있게 해줍니다. Java에서 입력과 출력을 처리할 때 기본 데이터와 객체 유형 데이터를 처리해야 하는 상황을 만나게 됩니다. Java는 이를 용이하게 하기 위해 래퍼 클래스 또는 원시 클래스 변수를 직접 사용하는 두 가지 옵션을 제공합니다.

이 튜토리얼에서는 래퍼 클래스와 기본 데이터 유형을 소개합니다. 이러한 각 방법에는 장점과 주의 사항이 있으므로 Java I/O 작업과 관련하여 정보에 입각한 결정을 내리는 데 도움이 되도록 자세히 살펴보겠습니다.

기본 데이터 유형

"int", "float", "boolean" 및 "char"와 같은 기본 데이터 유형은 Java에서 데이터의 기본 구성 블록을 나타냅니다. 이는 개체가 아니며 래퍼 클래스와 같은 추가 기능이나 메서드가 없습니다. I/O 작업에서 기본 데이터 유형을 사용할 때 기본 값에 대해 직접 작업을 수행할 수 있습니다.

기본 데이터 유형에는 해당 유형에 따라 할당된 기본값이 있습니다. 예를 들어, "int", "byte" 및 "short" 변수에는 기본값 0이 할당되고, "float" 및 "double" 변수에는 기본값 0.0이 할당되며, Boolean 변수에는 기본값 false가 할당됩니다. char 기본 데이터 유형의 기본값은 값이 'u0000'인 유니코드 문자입니다. 인쇄할 수 없는 문자인 널 문자를 나타냅니다.

다음은 I/O 작업에 기본 데이터 유형을 사용할 때 고려해야 할 몇 가지 주요 측면입니다. -

성능 노트

기본 데이터 유형은 래퍼 클래스에 비해 더 나은 성능을 제공합니다. 메모리 공간이 더 작고 데이터를 저장하고 조작하는 데 필요한 리소스도 더 적습니다.

직접 데이터 조작

기본 데이터 유형을 사용하면 기본 값으로 직접 작업할 수 있으므로 데이터를 세밀하게 제어해야 할 때 유용합니다. 객체 지향 연산의 오버헤드 없이 수학 연산, 비트 연산 및 기타 하위 수준 연산을 수행할 수 있습니다.

기능 제한

래퍼 클래스와 달리 기본 데이터 유형은 숫자 변환이나 서식 지정과 같은 작업을 위한 유틸리티 메서드를 제공하지 않습니다. 기본 유형으로 작업할 때 이러한 기능을 수동으로 구현하거나 다른 라이브러리의 도우미 메서드에 의존해야 할 수도 있습니다.

포장

"Integer", "Float", "Boolean" 및 "Character"와 같은 Java의 래퍼 클래스는 기본 데이터 유형 작업을 위한 객체 지향 기능을 제공합니다. 이를 통해 기본 유형을 객체로 처리하고 개별 기본 데이터 유형에서는 사용할 수 없는 추가 메서드 및 작업을 제공할 수 있습니다.

명시적으로 값을 할당하지 않으면 래퍼 클래스는 객체이므로 기본값 "null"로 초기화됩니다. I/O 작업에 래퍼 클래스를 사용할 때 고려해야 할 몇 가지 주요 측면은 다음과 같습니다. -

포장 및 개봉

Wrapper 클래스는 박싱 및 언박싱을 통해 기본 유형과 객체 간의 변환 프로세스를 용이하게 합니다. 박싱에는 해당 래퍼 클래스 개체에 원래 값을 래핑하는 작업이 포함되고, 박싱 해제에는 래퍼 개체에서 원래 값을 추출합니다. 이를 통해 객체가 필요한 I/O 작업에서 기본 유형을 사용할 수 있습니다.

실용적인 방법

Wrapper 클래스는 해당 기본 유형에 대한 다양한 작업을 위한 유틸리티 메서드를 제공합니다. 예를 들어 Integer 클래스는 문자열을 정수로 변환하고, 수학 연산을 수행하고, 숫자 형식을 조작하는 메서드를 제공합니다.

제네릭 및 컬렉션과의 상호 운용성

Wrapper 클래스는 제네릭 및 컬렉션과 관련된 시나리오에서 중요한 역할을 합니다. Java의 제네릭은 참조 유형만 허용하므로 래퍼 클래스를 사용하면 제네릭 클래스 및 컬렉션에서 기본 유형을 사용할 수 있습니다. 이를 통해 I/O 작업에서 다양한 유형의 데이터를 처리할 때 제네릭의 기능을 활용할 수 있습니다.

기본 데이터 유형을 위한 래퍼 클래스

Java의 래퍼 클래스는 기본 데이터 유형과 해당 객체 간에 변환하는 방법을 제공합니다. 이 변환(언박싱이라고 함)을 통해 원활한 교환이 가능하고 래핑된 클래스 객체 내의 원래 값에 액세스할 수 있습니다.

예제 코드에서 autoboxing은 값 3.14를 "Double" 래퍼 클래스 객체에 할당하는 데 사용되는 반면, unboxing은 래퍼 객체를 다시 원래의 "double"로 변환합니다.

으아악

출력

으아악

래퍼 클래스에 대한 기본 데이터 유형

Java를 사용하면 기본 데이터 유형을 오토박싱이라고 하는 해당 래퍼 클래스로 변환할 수 있습니다. 이러한 자동 변환은 기본 값을 래퍼 클래스 개체에 직접 할당하여 코드를 단순화하므로 기본 형식이 아닌 개체가 필요한 작업을 용이하게 합니다.

예제 코드에서는 부울 기본 값 "true"가 "primitiveValue"에 할당됩니다. 그런 다음 이 원시 값은 오토박싱을 사용하여 "부울" 래퍼 클래스 개체 "wrapperValue"로 변환됩니다.

public class Main {
   public static void main(String[] args) {
      // Primitive data type value
      boolean primitiveValue = true;         
      // Autoboxing: conversion to Boolean
      Boolean wrapperValue = Boolean.valueOf(primitiveValue);         
      System.out.println("Wrapper Value: " + wrapperValue);
   }
}

输出

Wrapper Value: true

结论

总之,在使用 Java I/O 操作时有两种选择:使用包装类或直接使用原始数据类型。两种方法都有其优点和考虑因素。使用原始数据类型时,您可以直接使用原始值,这提供了更好的性能、直接的数据操作和更小的内存占用。另一方面,包装类提供了用于处理原始数据类型的面向对象的功能。最终,包装类和原始数据类型之间的选择取决于您的要求和性能考虑。

위 내용은 Java I/O 작업 - 래퍼 클래스 및 기본 클래스 변수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제