Middle
51
questionbank

Опишите иерархию коллекций в Java.

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

Иерархия коллекций в Java основана на наборе интерфейсов, предоставляющих стандартный способ представления групп объектов.

Основные интерфейсы:

  • Collection: корневой интерфейс иерархии. Определяет базовые операции, применимые ко всем коллекциям: добавление, удаление, проверка наличия элементов, определение размера.
  • Set: коллекция, не содержащая дубликатов и не имеющая определенного порядка элементов.
  • List: упорядоченная коллекция с возможностью доступа к элементам по индексу. Может содержать дубликаты.
  • Queue: коллекция, предназначенная для хранения элементов перед обработкой. Обычно следует правилу FIFO (First-In, First-Out), но существуют и другие реализации.
  • Deque: двусторонняя очередь. Поддерживает добавление и удаление элементов с обоих концов.
  • Map: коллекция, хранящая пары "ключ-значение". Ключи должны быть уникальными. Не расширяет интерфейс Collection.

Основные реализующие классы (примеры):

ИнтерфейсРеализующие классы (примеры)Описание
SetHashSet, LinkedHashSet, TreeSetБез дубликатов. HashSet - без порядка, LinkedHashSet - сохраняет порядок добавления, TreeSet - сортированный.
ListArrayList, LinkedList, VectorУпорядоченная. ArrayList - на основе массива, LinkedList - на основе связного списка, Vector - синхронизированный (устарел).
QueueLinkedList, PriorityQueueДля обработки. LinkedList - FIFO, PriorityQueue - на основе приоритетов.
DequeArrayDeque, LinkedListДвусторонняя очередь. ArrayDeque - на основе массива, LinkedList - на основе связного списка.
MapHashMap, LinkedHashMap, TreeMap, HashtableКлюч-значение. HashMap - без гарантированного порядка, LinkedHashMap - сохраняет порядок добавления/доступа, TreeMap - сортированный по ключам, Hashtable - синхронизированный (устарел).

Пример использования ArrayList:

java

Пример использования HashSet:

java

Пример использования HashMap:

java