如果两个对象相等,那么它们应该具有相同的hascode但反之则不正确(即如果两个对象具有相同的哈希码并不意味着它们是相同的) - 你能用一个例子证明它是正确的吗?感谢
答案 0 :(得分:8)
简单:有多少可能的字符串?现在有多少可能的哈希码值?你还有什么建议处理这个问题的?
基本上,哈希码是一种快速进入可能的匹配的方式,因此您可以非常快速地缩小候选区域。他们不必须是唯一的这一事实意味着它们可以包含的信息少于原始数据。
答案 1 :(得分:0)
回答“有多少个字符串?”的问题。阅读博尔赫斯的“巴别图书馆”,(http://jubal.westnet.com/hyperdiscordia/library_of_babel.html)。
回答“有多少可能的哈希码?”这个问题。在Java文档中查找Object.hashCode()
返回的类型,然后确定该类型可以有多少个值。