Junior — Middle
O que impede o uso de tipos de dados básicos em parâmetros genéricos?
sobes.tech IA
Resposta da IA
No Java, as genéricas são implementadas usando eliminação de tipos (type erasure), o que significa que a informação sobre os tipos dos parâmetros genéricos não está disponível em tempo de execução.
Por isso, não é possível usar tipos primitivos (int, boolean, etc.) como parâmetros genéricos, pois eles não são objetos e não podem ser representados como uma classe.
Por exemplo, não se pode escrever:
List<int> numbers; // Erro
Em vez disso, deve-se usar wrappers:
List<Integer> numbers; // Correto
Isso ocorre porque as genéricas funcionam apenas com tipos de objetos, e os primitivos não são objetos.