De omslagsklass i Java tillhandahåller mekanismen att omvandla primitiv till objekt och objekt till primitiv .
Sedan J2SE 5.0, autoboxning och unboxing funktionen konverterar primitiver till objekt och objekt till primitiver automatiskt. Den automatiska omvandlingen av primitiv till ett objekt kallas autoboxning och vice versa unboxing.
Användning av Wrapper-klasser i Java
Java är ett objektorienterat programmeringsspråk, så vi måste hantera objekt många gånger som i samlingar, serialisering, synkronisering, etc. Låt oss se de olika scenarierna där vi behöver använda omslagsklasserna.
sql välj från flera tabeller
De åtta klasserna i java.lang paket är kända som wrapper-klasser i Java. Listan över åtta omslagsklasser ges nedan:
Primitiv typ | Omslagsklass |
---|---|
booleskt | Boolean |
röding | Karaktär |
byte | Byte |
kort | Kort |
int | Heltal |
lång | Lång |
flyta | Flyta |
dubbel | Dubbel |
Autoboxning
Den automatiska omvandlingen av primitiv datatyp till dess motsvarande omslagsklass kallas autoboxing, till exempel byte till byte, char till Character, int till heltal, long till Long, float till Float, boolean till boolean, dubbel till dubbel och kort för kort.
Sedan Java 5 behöver vi inte använda metoden valueOf() för wrapperklasser för att konvertera primitiva till objekt.
Wrapper-klass Exempel: Primitiv till 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); }}
Produktion:
ankita lokhande ålder
20 20 20
Unboxing
Den automatiska omvandlingen av omslagstyp till motsvarande primitiva typ kallas unboxing. Det är den omvända processen för autoboxning. Sedan Java 5 behöver vi inte använda metoden intValue() för wrapperklasser för att konvertera wrappertypen till primitiver.
java annat om
Wrapper class Exempel: Wrapper till Primitiv
//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); }}
Produktion:
3 3 3
Java Wrapper-klasser Exempel
//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); }}
Produktion:
---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
Anpassad Wrapper-klass i Java
Java Wrapper-klasser omsluter de primitiva datatyperna, det är därför det är känt som wrapperklasser. Vi kan också skapa en klass som omsluter en primitiv datatyp. Så vi kan skapa en anpassad omslagsklass i 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); }}
Produktion:
10