Javo samoboksiranje in odpakiranje

V tej vadnici bomo s pomočjo primerov spoznali samodejno pošiljanje in razpakiranje Java.

Java Autoboxing - primitivni tip za ovojni predmet

Pri samodejnem zaboju prevajalnik Java samodejno pretvori primitivne tipe v ustrezne predmete razreda ovitka. Na primer

 int a = 56; // autoboxing Integer aObj = a; 

Avtoboks ima veliko prednost pri delu z zbirkami Java.

Primer 1: Java Autoboxing

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList list = new ArrayList(); //autoboxing list.add(5); list.add(6); System.out.println("ArrayList: " + list); ) ) 

Izhod

 ArrayList: (5, 6) 

V zgornjem primeru smo ustvarili seznam nizov vrste Integer. Seznam matrik torej lahko vsebuje samo predmete Integertipa.

Opazite vrstico,

 list.add(5); 

Tukaj posredujemo primitivno vrednost tipa. Vendar se zaradi samodejnega boksa primitivna vrednost samodejno pretvori v Integerobjekt in shrani na seznam matrike.

Razpakiranje Java - predmeti za prvotne vrste

Pri razpakiranju prevajalnik Java samodejno pretvori predmete razreda ovitka v ustrezne primitivne tipe. Na primer

 // autoboxing Integer aObj = 56; // unboxing int a = aObj; 

Kot autoboxing , Unboxing se lahko uporablja tudi z zbirkami Java.

Primer 2: Razpakiranje Java

 import java.util.ArrayList; class Main ( public static void main(String() args) ( ArrayList list = new ArrayList(); //autoboxing list.add(5); list.add(6); System.out.println("ArrayList: " + list); // unboxing int a = list.get(0); System.out.println("Value at index 0: " + a); ) ) 

Izhod

 ArrayList: (5, 6) Vrednost pri indeksu 0: 5 

V zgornjem primeru upoštevajte vrstico,

 int a = list.get(0); 

Tu get()metoda vrne objekt z indeksom 0. Vendar se zaradi razpakiranja objekt samodejno pretvori v primitivni tip intin dodeli spremenljivki a.

Zanimive Članki...