Можно ли null-ключ в HashMap?

Ответ

Да, один null-ключ, кладётся в bucket 0. В ConcurrentHashMap нельзя ни ключ, ни значение.

Разбор: HashMap не вызывает hashCode() напрямую: внутренний метод hash() для null возвращает 0, поэтому единственный null-ключ всегда попадает в table[0]. Ключей-null может быть только один (ключи уникальны). ConcurrentHashMap запрещает null и в ключе, и в значении, чтобы избежать неоднозначности между «нет ключа» и «значение null» при конкурентном доступе.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться