в коде:
class MyClass {
public int hashCode(){
return this.name.hashCode() + 57;
}
}
Вопрос действителен, потому что this.name.hashCode()
является правильно сформированной hashCode()
реализацией (можно предположить, что this.name
является String
).
Я думаю, что число добавляется, потому что метод hashCode()
взят из Object
. Представьте, что у вас есть Set
со значениями типа String
и MyClass
. Если экземпляр String
совпадает с экземпляром MyClass.name
, то при добавлении 57 следует избегать использования обоими одинаковыми хэш-кодами.