JavaRush /Курсы /Java Multithreading /Задачи на equals & hashCode

Задачи на equals & hashCode

Java Multithreading
1 уровень , 5 лекция
Открыта
Задачи на equals & hashCode - 1

— Привет, Амиго!

— Привет, Диего!

— Старый добрый Диего подготовил для тебя несколько задач:

24
Задача
Java Multithreading, 1 уровень, 5 лекция
Недоступна
Equals and HashCode
В классе Solution исправить пару методов equals/hashCode в соответствии с правилами реализации этих методов(детали уточни у своего любимого поисковика). Обе строки first и last должны принимать участие в сравнении с помощью метода equals и вычислении hashcode. Метод main не участвует в тестировании.
6
Задача
Java Multithreading, 1 уровень, 5 лекция
Недоступна
Исправить ошибку. Сравнение объектов
Сравнение объектов Solution не работает должным образом. Найти ошибку и исправить. Метод main не участвует в тестировании.
6
Задача
Java Multithreading, 1 уровень, 5 лекция
Недоступна
Ошибка в equals/hashCode
Исправьте ошибки реализаций методов equals и hashCode для класса Solution.
Комментарии (179)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
No Name Уровень 36
16 ноября 2024
+ задачи в копилке
VAKHANDER Уровень 32
28 октября 2024
28.10.2024
Кирилл Уровень 34
21 мая 2024
Пока что, мне нравится этот квест. Возможно не сама теория и подача, и даже не задачи. А скорее как возможность вернуться к пройденным темам с имеющимся багажом знаний, чтобы понять их глубже. Но дальше, я думаю, будет еще интереснее. А так, советую все же разобраться с этими методами, с тем как они работают и почему именно так. И уже потом запомнить про магическое сочетание клавиш Идеи. Банально запомнить для себя, чем отличаются getClass() и instanceof, когда использовать один, когда второй. Как минимум это спросят на собеседовании. Как максимум, нужно не просто знать, что если нажать на кнопку, то загорится лампочка, а еще и как это все работает.
Максим Li Уровень 40
18 мая 2024
18.05.2024
Andrei Karavai Уровень 30
28 марта 2024
В принципе прикольно, хотя конечно можно было бы больше теории в курс поместить, а не заставлять самостоятельно по сайтам шариться. И ещё интересный момент: в некоторых задачах валидатор съедал методы equals и hashCode, автоматически сгенерированные в Intelij, а в некоторых - чего-то не хотелось ему принимать ответ))))
Andrei Karavai Уровень 30
28 марта 2024
https://javarush.com/groups/posts/2179-metodih-equals--hashcode-praktika-ispoljhzovanija Интересно, почему вот эту лекцию не дали почитать перед решением задач😀
Алексей Уровень 40 Expert
24 декабря 2023
Хорошие задачи , не сразу допёр по поводу проверки на null, но если подумать то все логично,хотя можно сделать по разному , вместо instanceoff применить getClass(),также нет проверки на null аргумента переданного)
Anonymous #3268884 Уровень 1
15 декабря 2023
А вообще, главный результат, достигнутый в ходе решения этих задач - это понимание того, что если поставленная задача по всем признакам должна быть тривиальной, а ты с ней факаешься два дня, призываешь Сатану, жалеешь о том, что ты не гений из 57-й школы, то возможно, что ты делаешь что-то не то, и есть более рациональный способ.
Anonymous #3268884 Уровень 1
15 декабря 2023
Ага, действительно задача изи. Оказывается, ее не нужно решать самостоятельно, а нужно погуглить и узнать, что методы иквалс() и хэшКод() создаются в Интеллидж ИДЕ автоматически путем нажатия особой комбинации клавиш. А пытаться разобраться в логике созданных методов вовсе и не нужно, суть задачи, оказывается, была не в том, чтобы написать эти методы самостоятельно, а в том, чтобы выяснить, как их создавать автоматически путем нажатия двух кнопок. Неожиданно, но забавно)))
Andrei Karavai Уровень 30
27 марта 2024
Спасибо, с первой задачей очень помогло😁
Andrei Karavai Уровень 30
27 марта 2024
Правда, автоматически сгенерированные equals и hashcode не смог разжевать валидатор, полагаю, что он работает на более ранней версии java
Anonymous #3268884 Уровень 1
15 декабря 2023
Серьезно? Третья задача помечена как легкая? Как ее вообще делать? Я первую-то задачу делал два дня, сделал с двадцать седьмой попытки, во вторую просто скопировал код из первой, а в третьей я не понимаю ни строчки. Но суть не в этом, а в том, что первую, которая хард, я хоть как-то но в итоге сделал, а третья, которая в десятки раз сложнее, чем первая помечена как "изи" ???? Это шутка????
Xyndeside Уровень 42
22 февраля 2024
Все задачи тут выполняются по одному и тому же алгоритму, кроме переменных ничего не меняется. Достаточно понять и разобрать первую "хард" задачу и остальные не потребуют никаких усилий. Поэтому если рассматривать данные задачи как независимые друг от друга, то да, они сложные, но если решать их по порядку и вникать, то 2 и 3 задачи спокойно можно назвать "изи"