Можно ли в Java использовать коллекцию для хранения элементов разных типов?

В Java коллекции обычно параметризуются типом элементов (generics), например, ListString хранит только строки. Однако можно использовать коллекцию с типом Object, чтобы хранить элементы разных типов:

Короткий ответ

Что ответить на собеседовании

В Java коллекции обычно параметризуются типом элементов (generics), например, List<String> хранит только строки. Однако можно использовать коллекцию с типом Object, чтобы хранить элементы разных типов:

Подробный разбор

Ответ с пояснениями

В Java коллекции обычно параметризуются типом элементов (generics), например, List<String> хранит только строки. Однако можно использовать коллекцию с типом Object, чтобы хранить элементы разных типов:

List<Object> mixedList = new ArrayList<>();
mixedList.add("строка");
mixedList.add(123);
mixedList.add(new Person("Анна", 25));

Но такой подход снижает типобезопасность и требует явных приведений типов при извлечении элементов. Поэтому рекомендуется использовать коллекции с конкретным типом, а для хранения разных типов — создавать обобщённые классы или использовать интерфейсы/абстрактные классы, которые объединяют эти типы.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее