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