Junior — Middle
75
Welche Schritte sind erforderlich, um die Methode hashCode für eine Klasse, die die Felder id, age und email enthält, korrekt zu implementieren?
Antwort von AI
sobes.tech KI
Для правильной реализации метода hashCode в классе с полями id, age и email нужно:
- Использовать все значимые поля, которые влияют на равенство объектов.
- Для примитивных типов (например,
int) использовать их значения напрямую. - Для объектов (например,
String email) использовать их собственныйhashCode, учитывая возможностьnull. - Комбинировать хеши полей с помощью умножения на простое число (обычно 31) для уменьшения коллизий.
Пример реализации:
@Override
public int hashCode() {
int result = Integer.hashCode(id);
result = 31 * result + Integer.hashCode(age);
result = 31 * result + (email != null ? email.hashCode() : 0);
return result;
}