不,它只是一个正常的哈希冲突.允许两个不相等的对象返回相同的哈希值 - 只是那时它们都需要进行相等性的比较.
这不仅限于身份哈希码 - 请考虑String.hashCode().显然,有更多可能的字符串而不是int值,因此必须至少有一个散列值,这是散列多个字符串的结果.A HashMap/ HashSet将首先使用哈希码快速将可能匹配集缩小到仅具有相同哈希码的那些条目,然后依次调用equals()每个条目直到找到匹配或确定没有条目相等到给定的密钥.
| 归档时间: |
|
| 查看次数: |
891 次 |
| 最近记录: |