Встречается на собеседованиях • сегодня
Что будет если использовать изменяемый ключ в HashMap
Использование изменяемого ключа в `HashMap` может привести к потере данных или некорректной работе. `HashMap` хранит элементы в "корзинах" на основе хэш-кода ключа. Если ключ изменяется после добавления, его хэш-код может измениться, и `HashMap` не сможет найти его при последующем поиске.
Пример:
```java
Map, String> map = new HashMap<>();
List key = new ArrayList<>(List.of("a"));
map.put(key, "value");
key.add("b"); // Изменяем ключ
System.out.println(map.get(key)); // null - ключ не найден
```
Рекомендации:
1. Используйте неизменяемые объекты (`String`, `Integer` и т.д.) в качестве ключей.
2. Если нужен кастомный ключ, сделайте его неизменяемым (`final` поля) и корректно реализуйте `equals()` и `hashCode()`.

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