Ваша задача предоставить такие GetHashCode()
, что возвращаемое значение будет другим для объектов, которые различаются (во всех возможных случаях; вы все равно можете вернуть один и тот же хэш-код дляодинаковые объекты) и всегда будет одинаковым для объектов, которые могут быть равными (во всех случаях; вы не можете возвращать разные хэш-коды для одинаковых объектов).
Например, если один изтри поля, которые вы сравниваете, это int
, вы можете вернуть это поле как GetHashCode()
.
Если, однако, трудно придумать что-нибудь умное, вы можете вернуть константу, такую как 42
.Таким образом, Equals()
будет вызываться для всех пар объектов, обеспечивая ожидаемые результаты, хотя и с наименьшей производительностью.