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

Чем отличаются между собой коллекции типа Queue, Set и List в контексте их использования и характеристик?

Компании, где спрашивали
Драйв Клик

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

sobes.tech AI

В Java коллекции Queue, Set и List отличаются по структуре данных и поведению:

  • List — упорядоченная коллекция, допускающая дубликаты. Элементы имеют индекс, можно обращаться по позиции. Пример: ArrayList, LinkedList.
  • Set — коллекция уникальных элементов без определённого порядка (например, HashSet) или с упорядочиванием (TreeSet). Дубликаты не допускаются.
  • Queue — коллекция для хранения элементов в порядке обработки, обычно FIFO (первым пришёл — первым вышел). Используется для очередей, например LinkedList, PriorityQueue.

Пример:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("apple"); // дубликат разрешён

Set<String> set = new HashSet<>();
set.add("apple");
set.add("apple"); // второй добавится не будет

Queue<String> queue = new LinkedList<>();
queue.offer("apple");
String first = queue.poll(); // извлекает "apple"