logo

Wrapper-Klassen in Java

Der Wrapper-Klasse in Java stellt den Mechanismus bereit um Primitive in Objekte und Objekte in Primitive umzuwandeln .

Seit J2SE 5.0, Autoboxen Und Auspacken Die Funktion wandelt Primitive automatisch in Objekte und Objekte in Primitive um. Die automatische Konvertierung eines Primitivs in ein Objekt wird als Autoboxing und umgekehrt als Unboxing bezeichnet.

Verwendung von Wrapper-Klassen in Java

Java ist eine objektorientierte Programmiersprache, daher müssen wir uns oft mit Objekten befassen, beispielsweise in Sammlungen, Serialisierung, Synchronisierung usw. Schauen wir uns die verschiedenen Szenarien an, in denen wir die Wrapper-Klassen verwenden müssen.

Methoden in Java
    Ändern Sie den Wert in Methode:Java unterstützt nur Call-by-Value. Wenn wir also einen primitiven Wert übergeben, ändert sich dadurch der ursprüngliche Wert nicht. Wenn wir jedoch den primitiven Wert in einem Objekt konvertieren, ändert sich dadurch der ursprüngliche Wert.Serialisierung:Wir müssen die Objekte in Streams konvertieren, um die Serialisierung durchzuführen. Wenn wir einen primitiven Wert haben, können wir ihn über die Wrapper-Klassen in Objekte umwandeln.Synchronisation:Die Java-Synchronisierung funktioniert mit Objekten im Multithreading.java.util-Paket:Das Paket java.util stellt die Dienstprogrammklassen für den Umgang mit Objekten bereit.Sammlungsrahmen:Das Java Collection Framework funktioniert nur mit Objekten. Alle Klassen des Sammlungsframeworks (ArrayList, LinkedList, Vector, HashSet, LinkedHashSet, TreeSet, PriorityQueue, ArrayDeque usw.) befassen sich nur mit Objekten.

Die acht Klassen der java.lang Paket werden in Java als Wrapper-Klassen bezeichnet. Die Liste der acht Wrapper-Klassen ist unten aufgeführt:

Primitiver TypWrapper-Klasse
Boolescher WertBoolescher Wert
verkohlen Charakter
ByteByte
kurzKurz
int Ganze Zahl
langLang
schwebenSchweben
doppeltDoppelt

Autoboxen

Die automatische Konvertierung eines primitiven Datentyps in die entsprechende Wrapper-Klasse wird als Autoboxing bezeichnet, z. B. Byte in Byte, Char in Character, Int in Integer, Long in Long, Float in Float, Boolean in Boolean, Double in Double und Short zu kurz.

Seit Java 5 müssen wir die valueOf()-Methode von Wrapper-Klassen nicht mehr verwenden, um das Grundelement in Objekte umzuwandeln.

Wie viele MB sind in einem GB?

Wrapper-Klasse Beispiel: Primitiv zu Wrapper

 //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); }} 

Ausgabe:

 20 20 20 

Auspacken

Die automatische Konvertierung des Wrapper-Typs in seinen entsprechenden primitiven Typ wird als Unboxing bezeichnet. Es ist der umgekehrte Prozess des Autoboxings. Seit Java 5 müssen wir die intValue()-Methode von Wrapper-Klassen nicht mehr verwenden, um den Wrapper-Typ in Grundelemente umzuwandeln.

Beispiel einer Wrapper-Klasse: Wrapper to Primitive

 //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); }} 

Ausgabe:

Schaltergehäuse Java
 3 3 3 

Beispiel für Java-Wrapper-Klassen

 //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); }} 

Ausgabe:

 ---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 

Benutzerdefinierte Wrapper-Klasse in Java

Java-Wrapper-Klassen verpacken die primitiven Datentypen, weshalb sie als Wrapper-Klassen bezeichnet werden. Wir können auch eine Klasse erstellen, die einen primitiven Datentyp umschließt. Wir können also eine benutzerdefinierte Wrapper-Klasse in Java erstellen.

 //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); }} 

Ausgabe:

 10