Добрый день! Решение авторов использует готовый метод, я о нем не знала и попробовала реализовать проверку сама. Единственное, я совсем не учла поле int year, и думала, что валидатор не примет решение. Однако он принял. В связи с этим вопрос: мой код правда соответствует условиям задачи, здесь необязательно проверять year, или просто "прокатило" ? Условие задачи: Напиши свою реализацию hashCode, используя переменные model и year. Если эти поля у двух объектов одинаковые, то должен возвращаться одинаковый hashCode. Если правильно реализовать метод hashCode, вывод должен быть таким: true true true true false false Requirements: 1. Нельзя изменять метод main. 2. В классе Car должен быть переопределен метод int hashCode(). 3. Реализуй метод hashCode так, что бы результат работы программы соответствовал условию. Мой код:
public class Car {
    private String model;
    private int year;

    public Car(String model, int year) {
        this.model = model;
        this.year = year;
    }

    @Override
    public int hashCode() {
        return this.model.charAt(0);
    }

    //напишите тут ваш код

    public static void main(String[] args) {
        Car lamborghini = new Car("Lamborghini", 2020);
        Car lamborghini1 = new Car("Lamborghini", 2020);
        Car ferrari = new Car("Ferrari", 2020);
        Car ferrari1 = new Car("Ferrari", 2020);
        Car bugatti = new Car("Bugatti", 2020);
        Car bugatti1 = new Car("Bugatti", 2020);
        System.out.println(ferrari.hashCode() == ferrari.hashCode());
        System.out.println(lamborghini.hashCode() == lamborghini1.hashCode());
        System.out.println(ferrari.hashCode() == ferrari1.hashCode());
        System.out.println(bugatti.hashCode() == bugatti1.hashCode());
        System.out.println(bugatti.hashCode() == lamborghini.hashCode());
        System.out.println(lamborghini.hashCode() == ferrari.hashCode());
    }
}