(Autoboxing & Unboxing explicados de forma simples e profissional)
Em Java, tipos primitivos são extremamente eficientes, mas nem sempre suficientes para trabalhar com APIs, coleções e recursos que exigem objetos.
Quando isso acontece, eles “vestem uma armadura”: os Wrappers.
Wrappers sĂŁo classes que representam tipos primitivos como objetos, permitindo que sejam usados em estruturas orientadas a objeto.
| 🔹 Primitivo | 🔸 Wrapper |
|---|---|
int |
Integer |
double |
Double |
float |
Float |
boolean |
Boolean |
char |
Character |
long |
Long |
short |
Short |
byte |
Byte |
➡️ Por que existem?
Porque objetos oferecem mĂ©todos, podem ser nulos e sĂŁo compatĂveis com estruturas como List, Set, Map e APIs modernas do Java.
Muitos recursos nĂŁo aceitam tipos primitivos:
Exemplo:
List<int> lista; // ❌ Não permitido
List<Integer> lista; // âś… Wrapper permitido