Можешь перечислить различные реализации интерфейса Map, с которыми работал?
Answer from AI
sobes.tech AI
В Java интерфейс Map имеет несколько популярных реализаций, с которыми часто приходится работать:
-
HashMap— самая распространённая реализация, основанная на хеш-таблице. Обеспечивает быстрый доступ по ключу (в среднем O(1)), не гарантирует порядок элементов. -
LinkedHashMap— расширяетHashMap, но сохраняет порядок вставки элементов, что полезно, если важен порядок обхода. -
TreeMap— реализует интерфейсSortedMap, хранит элементы в отсортированном порядке по ключу, основан на красно-чёрном дереве. Доступ и вставка работают за O(log n). -
ConcurrentHashMap— потокобезопасная реализация для многопоточного доступа без блокировок на всю карту.
Пример использования HashMap:
Map<String, Integer> map = new HashMap<>();
map.put("apple", 3);
map.put("banana", 5);
int count = map.get("apple");
Каждая реализация подходит для разных задач в зависимости от требований к порядку, производительности и потокобезопасности.