有可能
.
在产生
hash
冲突时
,
两个不相等的对象就会有相同的
hashcode
值
.
当
hash
冲突产生时
,
一般
有以下几种方式来处理
:
1.拉链法
:
每个哈希表节点都有一个
next
指针
,
多个哈希表节点可以用
next
指针构成一个单向链
表,被分配到同一个索引上的多个节点可以用这个单向链表进行存储
.
2.开放定址法
:
一旦发生了冲突
,
就去寻找下一个空的散列地址
,
只要散列表足够大
,
空的散列地址总
能找到
,
并将记录存入
3.
再哈希
:
又叫双哈希法
,
有多个不同的
Hash
函数
.
当发生冲突时
,
使用第二个
,
第三个
….
等哈希函数
计算地址
,
直到无冲突
.
hashcode()相同可能是同一个对象。
hashcode()不同一定不是同一个对象