Назад к вопросам
Middle
4
Дан следующий Java-класс class Person { String firstName; String lastName; Integer age; } Необходимо реализовать стандартный метод, осуществляющий сравнение 2-х объектов Person.
Компании, где спрашивали
экзон
Ответ от нейросети
sobes.tech AI
Для сравнения двух объектов класса Person обычно переопределяют метод equals и, желательно, hashCode. Вот пример реализации:
class Person {
String firstName;
String lastName;
Integer age;
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Person person = (Person) o;
return Objects.equals(firstName, person.firstName) &&
Objects.equals(lastName, person.lastName) &&
Objects.equals(age, person.age);
}
@Override
public int hashCode() {
return Objects.hash(firstName, lastName, age);
}
}
Здесь используется класс Objects из java.util для удобного сравнения и вычисления хеш-кода с учётом возможных null значений.