Какие знаешь коллекции в Java

«Какие знаешь коллекции в Java» — вопрос из категории Java, который задают на 24% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Java основные коллекции делятся на интерфейсы и их реализации:

List – упорядоченная коллекция с возможностью дублирования элементов:

  • ArrayList – динамический массив
  • LinkedList – двусвязный список
List<String> list = new ArrayList<>();
list.add("item");

Set – коллекция уникальных элементов:

  • HashSet – хэш-таблица
  • TreeSet – отсортированное дерево

Map – пары ключ-значение:

  • HashMap – хэш-таблица
  • TreeMap – отсортированная по ключам
Map<String, Integer> map = new HashMap<>();
map.put("key", 1);

Queue – очередь:

  • PriorityQueue – с приоритетом
  • ArrayDeque – двусторонняя очередь

Все коллекции находятся в пакете java.util и реализуют интерфейсы Collection или Map.