Junior — Middle
107
Hoe implementeer je de methode hashCode in je objecten?
Antwoord van AI
sobes.tech AI
Метод hashCode реализую так, чтобы он возвращал целочисленное значение, основанное на значимых полях объекта. Важно, чтобы:
- Для равных объектов
hashCodeбыл одинаковым - Для разных объектов желательно получать разные хеши
Пример реализации в Java с использованием нескольких полей:
@Override
public int hashCode() {
int result = 17;
result = 31 * result + (field1 != null ? field1.hashCode() : 0);
result = 31 * result + field2;
// добавляем другие значимые поля
return result;
}
Использование простого умножения на простое число (например, 31) помогает уменьшить коллизии.