– Szia Amigo!
"Ma az autoboxról fogok beszélni . Az AutoBox azt jelenti, hogy valamit automatikusan egy dobozba helyezünk."
"Emlékezhetsz rá, hogy a Java-nak vannak olyan típusai, amelyek öröklik az Object osztályt, valamint primitív típusai. De kiderült, hogy a kényelmes dolgok, mint a gyűjtemények és az általánosságok, csak az Object osztályt öröklő típusokkal működnek."
"Aztán az a döntés született, hogy minden primitív típusnak készítünk egy nem primitív megfelelőt."
Primitív típus | Nem primitív megfelelője |
---|---|
byte | Byte |
rövid | Rövid |
int | Egész szám |
hosszú | Hosszú |
úszó | Úszó |
kettős | Kettős |
logikai érték | Boolean |
char | karakter |
üres | Üres |
"De rendkívül kényelmetlen ezek között a típusok között állandóan konvertálni:"
int x = 3;
Integer y = new Integer(x + 1);
int z = y.intValue();
"Különösen, ha közvetlenül gyűjteményekkel dolgozik:"
int[] numbers = new int[10];
ArrayList list = new ArrayList();
for (int i = 0; i < numbers.length; i++)
{
list.add( new Integer(i));
}
„Ezért találták ki a Java alkotói a primitív típusok „autoboxolását”, és „kicsomagolják” nem primitív társaikhoz.”
"Íme, hogyan működik:
Amit látsz | Mi történik valójában |
---|---|
|
|
|
|
|
|
|
|
"Minden egyszerű. Int és Integer típusokat rendelhetsz egymáshoz, a fordító pedig minden másról gondoskodik."
– Ez nagyon kényelmes.
– Igen. De vannak árnyalatok, amelyekről később beszélek.
GO TO FULL VERSION