关于hashCode
关于hashCode
苏泽关于hashCode与equals()方法
如果equals想等,则hashCode也要相同。
但是hashCode相同,equasl不一定为ture;
如果重写equals方法,则要重写hashCode,来确保这个契约确保了在哈希集合中相等的对象具有相同的散列码。
不等的对象:即使两个对象的 hashCode 相同,它们不一定通过 equals 方法比较相等,因为不同对象可以有相同的哈希值(哈希冲突)。
关于==与常量池
如果创建了俩个不同的对象,虽然对象在不同的内存地址中,
但是指向了相同的常量池中,则俩个对象的引用相同,==也会变为true;
如果我把注释打开则会
因为指向了相同地址。
哈希冲突怎么解决
回到正题
链地址法:使用链表或其他数据结构来解决冲突,适合插入和删除操作频繁的情况。
开放地址法:通过探测下一个可用位置解决冲突,常用于简单实现。
再哈希:在负载因子达到一定值时扩大哈希表的大小,并重新分配元素。
我没用过先记着就行,等用到了文章会更新的。
评论
匿名评论隐私政策






