Спросят с вероятностью 62%
Иерархия коллекций — это набор интерфейсов и классов, которые предоставляют общие структуры данных, такие как списки, множества и карты. Находится в пакете
java.util и разработана для работы с группами объектов.Основные интерфейсы:
- Collection Interface: Корневой интерфейс иерархии коллекций. Определяет методы, такие как
add(), remove(), size(), isEmpty() и iterator(), которые должны быть реализованы всеми коллекциями.- List Interface: Представляет упорядоченную коллекцию. Элементы в списке могут быть доступны по индексам. Допускает дублирование элементов. Реализации включают
ArrayList, LinkedList и Vector.- Set Interface: Набор уникальных элементов. Не допускает дублирования элементов. Реализации включают
HashSet, LinkedHashSet и TreeSet.- Queue Interface: Для работы с коллекциями, используемыми для хранения элементов перед обработкой. Поддерживает операции вставки, извлечения и инспекции.
LinkedList реализует как List, так и Queue. Также есть PriorityQueue для элементов, которые должны обрабатываться в порядке приоритета.- Map Interface: Не наследуется от
Collection интерфейса. Описывает структуру для хранения пар ключ/значение. Ключи уникальны, а значения могут дублироваться. Реализации включают HashMap, LinkedHashMap, TreeMap и Hashtable.Особенности классов:
- ArrayList: Динамический массив для хранения элементов, который автоматически расширяется. Предлагает быстрый доступ к элементам по индексу.
- LinkedList: Двусвязный список, который обеспечивает эффективное добавление/удаление элементов. Может использоваться как список и очередь.
- HashSet: Использует хеш-таблицу для хранения уникальных элементов. Не гарантирует порядок элементов.
- LinkedHashSet: Расширяет
HashSet, сохраняя порядок вставки элементов.- TreeSet: Хранит элементы в отсортированном и восходящем порядке. Использует красно-черное дерево.
- HashMap: Хеш-таблица для хранения пар ключ/значение. Не поддерживает упорядоченность ключей или значений.
- LinkedHashMap: Расширяет
HashMap, сохраняя порядок вставки ключей.- TreeMap: Реализует красно-черное дерево, сохраняет ключи в отсортированном порядке.
- PriorityQueue: Элементы добавляются согласно их приоритету, определенному компаратором.
Суть иерархии коллекций
Иерархия коллекций обеспечивает унифицированный способ работы с различными типами данных. Она предоставляет гибкость для выбора подходящей структуры данных в зависимости от требований к производительности, порядку элементов и уникальности значений. Использование этих коллекций позволяет разработчикам эффективно хранить, извлекать, удалять и обрабатывать данные в Java-приложениях.
➡️ Примеры ответов
➡️ Список всех вопросов на Java Developer
🧩 Идущий | 🔐 Собесы | 🔐 Тестовые