Sobes.tech
Назад к вопросам
Middle+
7

Расскажи про коллекции Java, с какими работал, какие подходят под разные задачи.

Компании, где спрашивали
МТСМТС

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

sobes.tech AI

В Java есть несколько основных коллекций, с которыми я работал:

  • List (ArrayList, LinkedList) — упорядоченный набор элементов. ArrayList подходит для быстрого доступа по индексу, LinkedList — для частых вставок/удалений в середине.
  • Set (HashSet, TreeSet) — коллекция уникальных элементов. HashSet обеспечивает быстрый поиск, TreeSet хранит элементы в отсортированном порядке.
  • Map (HashMap, TreeMap, LinkedHashMap) — хранит пары ключ-значение. HashMap — быстрый доступ без порядка, TreeMap — отсортирован по ключу, LinkedHashMap — сохраняет порядок вставки.

Выбор коллекции зависит от задачи:

  • Для хранения уникальных элементов без порядка — HashSet.
  • Для упорядоченного списка с быстрым доступом — ArrayList.
  • Для отображения с быстрым поиском по ключу — HashMap.
  • Для отсортированных данных — TreeSet или TreeMap.

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

Map<String, Integer> wordCount = new HashMap<>();
wordCount.put("apple", 3);
wordCount.put("banana", 2);
int count = wordCount.getOrDefault("apple", 0);