|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.11.2016, 14:19 | #1 |
Пользователь
Регистрация: 31.01.2016
Сообщений: 67
|
Equals и GetHashCode и их переопределение?
Говорят существует правило, что если мы переопределяем Equals, то должны переопраделить и GetHashCode - почему?
|
02.11.2016, 14:47 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,709
|
Не то чтобы правило, и не то что прям должен... это из разряда хорошего стиля. Почему? Кратко: потому что они тесно связаны. Если вы переопределяете Equals, то значит вы меняете стандартную логику сравнения, а т.к. GetHashCode для одинаковых объектов должен выдавать одинаковый хеш, то и его логику надо подправить.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Gethashcode vs equals | ts-alan | Общие вопросы .NET | 14 | 04.04.2014 11:07 |
equals | Русtam | Общие вопросы по Java, Java SE, Kotlin | 2 | 01.10.2012 17:37 |
отредактировать программу и реализовать equals() и hashCode() | akkalenik | Общие вопросы по Java, Java SE, Kotlin | 1 | 07.10.2011 20:16 |
equals!!! | grimm_jow | Общие вопросы по Java, Java SE, Kotlin | 5 | 13.06.2010 13:45 |
Переопределение операций | toeman | Общие вопросы C/C++ | 2 | 20.11.2007 11:21 |