Јава аутобокинг и унбокинг

У овом упутству ћемо научити о Јава аутобокингу и распакирању помоћу примера.

Јава Аутобокинг - примитивни тип за омотач

У аутоматском боксању , Јава компајлер аутоматски претвара примитивне типове у одговарајуће објекте класе омотача. На пример,

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

Аутобокинг има велику предност током рада са Јава колекцијама.

Пример 1: Јава Аутобокинг

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

Оутпут

 АрраиЛист: (5, 6) 

У горњем примеру смо креирали низ поља типа Интегер. Стога листа поља може садржати само објекте Integerтипа.

Обратите пажњу на линију,

 list.add(5); 

Овде преносимо примитивну вредност типа. Међутим, због аутоматског боксања , примитивна вредност се аутоматски претвара у Integerобјекат и чува на листи низова.

Отпакивање Јава - омотач објектима примитивним типовима

При отпакивању , Јава компајлер аутоматски претвара објекте класе омотача у одговарајуће примитивне типове. На пример,

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

Као и аутоматско паковање , Унбокинг може да се користи са Јава колекцијама.

Пример 2: Отпакивање Јава-а

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

Оутпут

 АрраиЛист: (5, 6) Вредност у индексу 0: 5 

У горњем примеру, обратите пажњу на ред,

 int a = list.get(0); 

Овде get()метода враћа објект са индексом 0. Међутим, због отпакивања , објекат се аутоматски претвара у примитивни тип intи додељује променљивој а.

Занимљиви Чланци...