Klasa Java Wrapper (s primjerima)

U ovom uputstvu uz primjere ćemo naučiti o klasi Java Wrapper.

Omot nastava u Java se koristi za pretvaranje primitivne vrste ( int, char, float, itd) u odgovarajućim objektima.

Svaka od 8 primitivnih vrsta ima odgovarajuće klase omota.

Primitivni tip Klasa omota
byte Byte
boolean Boolean
char Character
double Double
float Float
int Integer
long Long
short Short

Pretvori primitivni tip u omotačke objekte

valueOf()Metodu također možemo koristiti za pretvaranje primitivnih tipova u odgovarajuće objekte.

Primjer 1: Primitivni tipovi omotača objekata

 class Main ( public static void main(String() args) ( // create primitive types int a = 5; double b = 5.65; //converts into wrapper objects Integer aObj = Integer.valueOf(a); Double bObj = Double.valueOf(b); if(aObj instanceof Integer) ( System.out.println("An object of Integer is created."); ) if(bObj instanceof Double) ( System.out.println("An object of Double is created."); ) ) ) 

Izlaz

Stvoren je objekt cjeline. Stvoren je objekt Doublea.

U gornjem primjeru koristili smo valueOf()metodu za pretvaranje primitivnih tipova u objekte.

Ovdje smo koristili instanceofoperatera kako biste provjerili jesu li generiran predmeti su Integerili Doubletipa ili ne.

Međutim, Java kompajler može izravno pretvoriti primitivne tipove u odgovarajuće objekte. Na primjer,

 int a = 5; // converts into object Integer aObj = a; double b = 5.6; // converts into object Double bObj = b; 

Taj je postupak poznat pod nazivom auto-boks . Da biste saznali više, posjetite Java autoboxing i unboxing.

Napomena : Primitivne tipove također možemo pretvoriti u objekte omotača pomoću Wrapperkonstruktora klasa. Ali upotreba konstruktora odbačena je nakon Jave 9.

Omotač objekata u primitivne tipove

Za pretvaranje predmete u primitivnih tipova, možemo koristiti odgovarajuće metode vrijednost ( intValue(), doubleValue()itd) prisutan u svakom omotač klasi.

Primjer 2: Omotani objekti u primitivne tipove

 class Main ( public static void main(String() args) ( // creates objects of wrapper class Integer aObj = Integer.valueOf(23); Double bObj = Double.valueOf(5.55); // converts into primitive types int a = aObj.intValue(); double b = bObj.doubleValue(); System.out.println("The value of a: " + a); System.out.println("The value of b: " + b); ) ) 

Izlaz

 Vrijednost a: 23 Vrijednost b: 5,55 

U gore navedenom primjeru, mi smo koristili intValue()i doubleValue()metodom za pretvaranje Integeri Doublepredmete u odgovarajuće primitivne vrste.

Međutim, Java kompajler može automatski pretvoriti objekte u odgovarajuće primitivne tipove. Na primjer,

 Integer aObj = Integer.valueOf(2); // converts into int type int a = aObj; Double bObj = Double.valueOf(5.55); // converts into double type double b = bObj; 

Taj je postupak poznat pod nazivom raspakiranje . Da biste saznali više, posjetite Java autoboxing i unboxing.

Prednosti klasa omota

  • U Javi ćemo ponekad možda trebati koristiti objekte umjesto primitivnih tipova podataka. Na primjer, tijekom rada s kolekcijama.
     // error ArrayList list = new ArrayList(); // runs perfectly ArrayList list = new ArrayList();
    U takvim nam slučajevima klase omotača pomažu da primitivne tipove podataka koristimo kao objekte.
  • Nultu vrijednost možemo pohraniti u objekte omota. Na primjer,
      // generates an error int a = null; // runs perfectly Integer a = null; 

Napomena : Primitivni tipovi učinkovitiji su od odgovarajućih objekata. Stoga, kada je učinkovitost zahtjev, uvijek se preporučuju primitivni tipovi.

Zanimljivi članci...