Java autoboxing un unboxing

Šajā apmācībā mēs uzzināsim par Java autoboxing un unboxing ar piemēru palīdzību.

Java Autoboxing - primitīvs veids, kā ietīt objektu

In autoboxing , Java kompilators automātiski pārveido primitīvas veidi savās atbilstošās iesaiņojuma klases objektiem. Piemēram,

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

Automātiskajai kopēšanai ir liela priekšrocība, strādājot ar Java kolekcijām.

1. piemērs: Java automātiskā pārlūkošana

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

Rezultāts

 ArrayList: (5, 6) 

Iepriekš minētajā piemērā mēs esam izveidojuši masīvu sarakstu ar veselu skaitli. Tādējādi masīvu sarakstā var būt tikai Integerveida objekti .

Ievērojiet līniju,

 list.add(5); 

Šeit mēs nododam primitīva tipa vērtību. Tomēr autoboksēšanas dēļ primitīvā vērtība tiek automātiski pārveidota par Integerobjektu un saglabāta masīvu sarakstā.

Java Unboxing - iesaiņošanas objekti pret primitīviem veidiem

In izsaiņošana , Java kompilators automātiski pārveido iesaiņojuma klases objektus savos atbilstošās primitīvas veidi. Piemēram,

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

Tāpat autoboxing , izsaiņošana var izmantot arī ar Java kolekcijām.

2. piemērs: Java Unboxing

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

Rezultāts

 ArrayList: (5, 6) Vērtība indeksā 0: 5 

Iepriekš minētajā piemērā ievērojiet līniju,

 int a = list.get(0); 

Šeit get()metode atgriež objektu indeksā 0. Tomēr, pateicoties izsaiņošanai , objekts tiek automātiski pārveidots primitīvajā tipā intun piešķirts mainīgajam a.

Interesanti raksti...