logo

Java의 래퍼 클래스

그만큼 Java의 래퍼 클래스 메커니즘을 제공합니다 프리미티브를 객체로, 객체를 프리미티브로 변환하려면 .

J2SE 5.0 이후, 오토박싱 그리고 언박싱 기능은 프리미티브를 객체로, 객체를 프리미티브로 자동 변환합니다. 프리미티브를 객체로 자동 변환하는 것을 오토박싱(autoboxing)이라고 하며 그 반대의 경우도 언박싱(unboxing)이라고 합니다.

Java에서 래퍼 클래스 사용

Java는 객체 지향 프로그래밍 언어이므로 컬렉션, 직렬화, 동기화 등과 같이 객체를 여러 번 처리해야 합니다. 래퍼 클래스를 사용해야 하는 다양한 시나리오를 살펴보겠습니다.

리눅스 디렉토리 이름 바꾸는 방법
    방법의 값을 변경합니다.Java는 값별 호출만 지원합니다. 따라서 기본 값을 전달해도 원래 값은 변경되지 않습니다. 그러나 객체의 기본 값을 변환하면 원래 값이 변경됩니다.직렬화:직렬화를 수행하려면 객체를 스트림으로 변환해야 합니다. 기본 값이 있으면 래퍼 클래스를 통해 객체로 변환할 수 있습니다.동기화:Java 동기화는 멀티스레딩의 개체와 함께 작동합니다.java.util 패키지:java.util 패키지는 객체를 처리하기 위한 유틸리티 클래스를 제공합니다.수집 프레임워크:Java 컬렉션 프레임워크는 객체에서만 작동합니다. 컬렉션 프레임워크의 모든 클래스(ArrayList, LinkedList, Vector, HashSet, LinkedHashSet, TreeSet, PriorityQueue, ArrayDeque 등)는 객체만 처리합니다.

8개의 클래스는 java.lang 패키지는 Java에서 래퍼 클래스로 알려져 있습니다. 8개의 래퍼 클래스 목록은 다음과 같습니다.

기본 유형래퍼 클래스
부울부울
성격
바이트바이트
짧은짧은
정수 정수
뜨다뜨다
더블더블

오토박싱

기본 데이터 유형을 해당 래퍼 클래스로 자동 변환하는 것을 오토박싱이라고 합니다(예: byte를 Byte로, char를 Character로, int를 Integer로, long을 Long으로, float를 Float로, boolean을 Boolean으로, double을 Double로, short) 짧게.

Java 5부터는 기본 요소를 객체로 변환하기 위해 래퍼 클래스의 valueOf() 메서드를 사용할 필요가 없습니다.

래퍼 클래스 예: 원시에서 래퍼로

 //Java program to convert primitive into objects //Autoboxing example of int to Integer public class WrapperExample1{ public static void main(String args[]){ //Converting int into Integer int a=20; Integer i=Integer.valueOf(a);//converting int into Integer explicitly Integer j=a;//autoboxing, now compiler will write Integer.valueOf(a) internally System.out.println(a+' '+i+' '+j); }} 

산출:

자바 정수를 문자열로
 20 20 20 

언박싱

래퍼 유형을 해당 기본 유형으로 자동 변환하는 것을 언박싱이라고 합니다. 오토박싱의 반대 과정입니다. Java 5부터는 래퍼 유형을 기본 형식으로 변환하기 위해 래퍼 클래스의 intValue() 메서드를 사용할 필요가 없습니다.

패딩 CSS

래퍼 클래스 예: 래퍼에서 프리미티브로

 //Java program to convert object into primitives //Unboxing example of Integer to int public class WrapperExample2{ public static void main(String args[]){ //Converting Integer to int Integer a=new Integer(3); int i=a.intValue();//converting Integer to int explicitly int j=a;//unboxing, now compiler will write a.intValue() internally System.out.println(a+' '+i+' '+j); }} 

산출:

 3 3 3 

Java 래퍼 클래스 예

 //Java Program to convert all primitives into its corresponding //wrapper objects and vice-versa public class WrapperExample3{ public static void main(String args[]){ byte b=10; short s=20; int i=30; long l=40; float f=50.0F; double d=60.0D; char c='a'; boolean b2=true; //Autoboxing: Converting primitives into objects Byte byteobj=b; Short shortobj=s; Integer intobj=i; Long longobj=l; Float floatobj=f; Double doubleobj=d; Character charobj=c; Boolean boolobj=b2; //Printing objects System.out.println('---Printing object values---'); System.out.println('Byte object: '+byteobj); System.out.println('Short object: '+shortobj); System.out.println('Integer object: '+intobj); System.out.println('Long object: '+longobj); System.out.println('Float object: '+floatobj); System.out.println('Double object: '+doubleobj); System.out.println('Character object: '+charobj); System.out.println('Boolean object: '+boolobj); //Unboxing: Converting Objects to Primitives byte bytevalue=byteobj; short shortvalue=shortobj; int intvalue=intobj; long longvalue=longobj; float floatvalue=floatobj; double doublevalue=doubleobj; char charvalue=charobj; boolean boolvalue=boolobj; //Printing primitives System.out.println('---Printing primitive values---'); System.out.println('byte value: '+bytevalue); System.out.println('short value: '+shortvalue); System.out.println('int value: '+intvalue); System.out.println('long value: '+longvalue); System.out.println('float value: '+floatvalue); System.out.println('double value: '+doublevalue); System.out.println('char value: '+charvalue); System.out.println('boolean value: '+boolvalue); }} 

산출:

 ---Printing object values--- Byte object: 10 Short object: 20 Integer object: 30 Long object: 40 Float object: 50.0 Double object: 60.0 Character object: a Boolean object: true ---Printing primitive values--- byte value: 10 short value: 20 int value: 30 long value: 40 float value: 50.0 double value: 60.0 char value: a boolean value: true 

Java의 사용자 정의 래퍼 클래스

Java 래퍼 클래스는 기본 데이터 유형을 래핑하므로 래퍼 클래스라고 합니다. 기본 데이터 유형을 래핑하는 클래스를 만들 수도 있습니다. 따라서 Java로 사용자 정의 래퍼 클래스를 만들 수 있습니다.

 //Creating the custom wrapper class class Javatpoint{ private int i; Javatpoint(){} Javatpoint(int i){ this.i=i; } public int getValue(){ return i; } public void setValue(int i){ this.i=i; } @Override public String toString() { return Integer.toString(i); } } //Testing the custom wrapper class public class TestJavatpoint{ public static void main(String[] args){ Javatpoint j=new Javatpoint(10); System.out.println(j); }} 

산출:

 10