Встречается на 2% собеседований по Java
Является ли строка хорошим ключом для HashMap
Строки могут быть хорошими ключами для HashMap, если соблюдены условия:
-
Иммутабельность - String в Java неизменяем (immutable), что гарантирует, что хэш-код не изменится после добавления в HashMap.
-
Правильный hashCode() - String реализует корректный hashCode(), равномерно распределяющий значения.
- Правильный equals() - String корректно сравнивает содержимое.
Пример хорошего использования:
java
Map<String, Integer> map = new HashMap<>();
map.put("key", 1); // Хорошо, так как String immutableНо есть нюансы:
- Длинные строки могут снижать производительность из-за вычисления хэша
- Если строки создаются динамически (например, конкатенация), лучше использовать
intern()или другие механизмы для избежания дублирования
В целом, String - один из лучших вариантов для ключей HashMap в Java.

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