Sobes.tech
Назад к вопросам
Junior — Middle
67

Можно ли использовать любые типы данных в параметрах обобщений (Generics)?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

В Java в параметрах обобщений (Generics) нельзя использовать примитивные типы данных (например, int, boolean, double). Вместо них нужно использовать соответствующие классы-обёртки (Integer, Boolean, Double и т.д.).

Это связано с тем, что Generics в Java реализованы через стирание типов (type erasure) и работают только с объектными типами.

Пример:

List<Integer> numbers = new ArrayList<>(); // правильно
List<int> numbers = new ArrayList<>(); // ошибка компиляции

Таким образом, можно использовать любые классы и интерфейсы, но не примитивы напрямую.