Встречается на собеседованиях • сегодня
Каким должен быть ключ в HashMap
Ключ в HashMap должен быть:
- Иммутабельным (или хотя бы не изменяться после добавления в HashMap), так как изменение ключа может нарушить хэш-код и поиск по нему станет невозможным.
- Правильно реализовать
equals()иhashCode():- Если
equals()возвращаетtrue, тоhashCode()должен быть одинаковым. - Обратное не обязательно (коллизии допустимы).
- Если
Пример:
java
public final class ImmutableKey {
private final String value;
public ImmutableKey(String value) {
this.value = value;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
ImmutableKey that = (ImmutableKey) o;
return Objects.equals(value, that.value);
}
@Override
public int hashCode() {
return Objects.hash(value);
}
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы