tgoop.com/Java_Iibrary/1313
Last Update:
Общие вопросы для собеседования по HashMap в Java
Может ли HashMap содержать null-ключи и null-значения?
—> Да, один null-ключ допускается.
—> Несколько null-значений разрешены.
Потокобезопасен ли HashMap?
—>Нет, не потокобезопасен
Безопасные альтернативы:Collections.synchronizedMap()
(медленнее, блокирует всю карту)ConcurrentHashMap
(предпочтительнее при многопоточности)
Могут ли два разных объекта иметь одинаковый хеш-код?
—> Да. Это называется хеш-коллизия
Что вызывает ConcurrentModificationException
?
—> Изменение HashMap во время итерации (например, через for-each
) без использования Iterator.remove()
Может ли HashMap содержать два ключа с одинаковым хеш-кодом?
—> Да. HashMap обрабатывает коллизии с помощью цепочек (chaining)
Что происходит при вставке дублирующегося ключа?
—> Новое значение перезаписывает старое для этого ключа