Java autoboxing și unboxing

În acest tutorial, vom afla despre Java autoboxing și unboxing cu ajutorul exemplelor.

Java Autoboxing - Primitive Type to Wrapper Object

În autoboxing , compilatorul Java convertește automat tipurile primitive în obiectele lor corespunzătoare din clasa wrapper. De exemplu,

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

Autoboxing-ul are un mare avantaj în timp ce lucrați cu colecțiile Java.

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

Ieșire

 ArrayList: (5, 6) 

În exemplul de mai sus, am creat o listă matrice de tip întreg. Prin urmare, lista de matrice poate conține numai obiecte de Integertip.

Observați linia,

 list.add(5); 

Aici, trecem valoare de tip primitiv. Cu toate acestea, datorită autoboxing-ului , valoarea primitivă este convertită automat într-un Integerobiect și stocată în lista matrice.

Java Unboxing - Obiecte Wrapper la tipuri primitive

În unboxing , compilatorul Java convertește automat obiectele din clasa wrapper în tipurile lor primitive corespunzătoare. De exemplu,

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

La fel ca autoboxing-ul , unboxing-ul poate fi utilizat și cu colecțiile Java.

Exemplul 2: Unboxing 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); ) ) 

Ieșire

 ArrayList: (5, 6) Valoare la index 0: 5 

În exemplul de mai sus, observați linia,

 int a = list.get(0); 

Aici, get()metoda returnează obiectul la indexul 0. Cu toate acestea, datorită dezabonării , obiectul este convertit automat în tipul primitiv intși atribuit variabilei a.

Articole interesante...