Встречается на собеседованиях • сегодня
Как устроен hashCode
Хэш-код в Java — это целое число, возвращаемое методом hashCode(), используемое для быстрого сравнения объектов в коллекциях, таких как HashMap или HashSet.
Основные принципы:
- Консистентность: Если объект не изменялся,
hashCode()должен возвращать одно и то же значение. - Равенство объектов: Если
a.equals(b) == true, тоa.hashCode() == b.hashCode()(обратное не обязательно). - Эффективность: Хэш-функция должна равномерно распределять значения.
Пример:
java
@Override
public int hashCode() {
int prime = 31;
int result = 1;
result = prime * result + (field1 == null ? 0 : field1.hashCode());
result = prime * result + (field2 == null ? 0 : field2.hashCode());
return result;
}Используется число 31, т.к. оно простое и оптимизируется JVM (31 * i == (i << 5) - i).

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