Java'da sarmalayıcı sınıfı mekanizmayı sağlar ilkel olanı nesneye ve nesneyi ilkel hale dönüştürmek .
J2SE 5.0'dan bu yana, otomatik kutulama Ve kutu açma özelliği, ilkelleri otomatik olarak nesnelere ve nesneleri ilkellere dönüştürür. İlkelin bir nesneye otomatik olarak dönüştürülmesi, otomatik kutulama ve tam tersi olarak kutudan çıkarma olarak bilinir.
Java'da Wrapper sınıflarının kullanımı
Java nesne yönelimli bir programlama dilidir, dolayısıyla Koleksiyonlar, Serileştirme, Senkronizasyon vb. gibi nesnelerle birçok kez uğraşmamız gerekir. Sarma sınıflarını kullanmamız gereken farklı senaryoları görelim.
c++ bölünmüş dize
Sekiz sınıf java.lang paket Java'da sarmalayıcı sınıflar olarak bilinir. Sekiz sarmalayıcı sınıfının listesi aşağıda verilmiştir:
İlkel Tip | Sarmalayıcı sınıfı |
---|---|
boolean | Boolean |
karakter | Karakter |
bayt | Bayt |
kısa | Kısa |
int | Tamsayı |
uzun | Uzun |
batmadan yüzmek | Batmadan yüzmek |
çift | Çift |
Otomatik kutulama
İlkel veri türünün karşılık gelen sarmalayıcı sınıfına otomatik olarak dönüştürülmesi, otomatik kutulama olarak bilinir; örneğin bayttan Bayta, karakterden Karaktere, int'den Tam Sayıya, long'dan Long'a, float'tan Float'a, boolean'dan Boolean'a, double'dan Double'a ve short Kısa'ya.
Java 5'ten bu yana, ilkelleri nesnelere dönüştürmek için sarmalayıcı sınıfların valueOf() yöntemini kullanmamıza gerek yok.
node.js'deki komut
Sarmalayıcı sınıfı Örnek: İlkelden Sarmalayıcıya
//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); }}
Çıktı:
20 20 20
Kutu açma
Sarmalayıcı türünün karşılık gelen ilkel türüne otomatik olarak dönüştürülmesi, kutudan çıkarma olarak bilinir. Otomatik kutulama işleminin tersidir. Java 5'ten bu yana, sarmalayıcı türünü temel öğelere dönüştürmek için sarmalayıcı sınıflarının intValue() yöntemini kullanmamıza gerek yok.
Sarmalayıcı sınıfı Örnek: Sarmalayıcıdan İlkel'e
//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); }}
Çıktı:
excel ilk karakteri kaldır
3 3 3
Java Wrapper sınıfları Örnek
//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); }}
Çıktı:
---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'da Özel Sarmalayıcı sınıfı
Java Wrapper sınıfları ilkel veri türlerini sarar, bu nedenle sarmalayıcı sınıflar olarak bilinir. Ayrıca ilkel bir veri türünü saran bir sınıf da oluşturabiliriz. Böylece Java'da özel bir sarmalayıcı sınıfı oluşturabiliriz.
//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); }}
Çıktı:
10