Встречается на 2% собеседований по Java
Как происходит проверка по ключу в HashMap
При добавлении элемента в HashMap сначала вычисляется хеш-код ключа через метод hashCode(). Затем с помощью внутренней функции хеширования (обычно (n-1) & hash) определяется индекс корзины (bucket).
Если в корзине уже есть элементы:
- Сравнивается хеш нового ключа с хешами существующих ключей
- Если хеши совпадают, проверяется равенство через
equals() - При совпадении - значение перезаписывается
- При несовпадении - элемент добавляется в конец связного списка/дерева (Java 8+)
Пример:
java
Map<String, Integer> map = new HashMap<>();
map.put("key", 1); // hash("key") -> индекс корзины
map.put("key", 2); // перезапишет значение, т.к. equals() вернет trueВажно: для корректной работы ключи должны правильно реализовывать hashCode() и equals().

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы