为设么从写hashCode()时,必须重写equals?
hashCode()的计算结果是有范围的,Integer的最大值,而值是无限的,有可能会发生重复,即不同的值有相同的哈希值,从而导致错误结果,因此需要重写equals来确保万无一失
为啥会产生哈希冲突
Integer的范围是有限的,而值是无限的,必然会重复
为设么从写hashCode()时,必须重写equals?
于 2023-08-14 10:33:44 首次发布
为设么从写hashCode()时,必须重写equals?
hashCode()的计算结果是有范围的,Integer的最大值,而值是无限的,有可能会发生重复,即不同的值有相同的哈希值,从而导致错误结果,因此需要重写equals来确保万无一失
为啥会产生哈希冲突
Integer的范围是有限的,而值是无限的,必然会重复