Sobes.tech
Junior
413

Ar girdėjote apie boxing ir unboxing Java kalboje?

Atsakymas iš AI

sobes.tech AI

Taip, girdėjau apie tai. Boxing (įvyniojimas) ir unboxing (išvyniojimas) Java yra automatiniai konvertavimai tarp pagrindinių tipų ir jų atitinkančių apvalkalo klasių.

Boxing: Automatinis pagrindinio tipo konvertavimas į atitinkančio apvalkalo klasės objektą.

Unboxing: Automatinis apvalkalo klasės objekto konvertavimas atgal į pagrindinį tipą.

Pavyzdžiai:

// Boxing
int primitiveInt = 10;
Integer wrappedInt = primitiveInt; // Automatinis įvyniojimas

// Unboxing
Integer anotherWrappedInt = 20;
int anotherPrimitiveInt = anotherWrappedInt; // Automatinis išvyniojimas

Boxing ir unboxing buvo įdiegti Java 5, siekiant supaprastinti darbą su kolekcijomis ir metodais, kurie tikisi objektų, o ne pagrindinių tipų.

Svarbu prisiminti, kad boxing ir unboxing gali paveikti našumą dėl naujų objektų kūrimo ir gali sukelti NullPointerException unboxing metu, jei apvalkalo objektas yra null.