==和equals的区别 hashCode和equals的联系
==和equals的区别:
对于没有重写equals()方法的类,==和equals的作用是相同的:比较两个实例对象的地址是否相同。而对于重写了equals方法的类,equals方法则比较的是两个实例对象的内容(例如String对象)。
hashCode与equals的联系:
重写equals方法必须重写hashCode()方法
hashCode方法用于生成在哈希结构中对象的哈希值,用于相等性判断。因此,我们应该保证相同的对象的哈希值应该也保证一致性。
一致性:若两个对象的equals方法返回true,则它们的hashCode值必须相同。
非一致性:若两个对象的哈希值相等,两个对象的equals方法比较结果不一定为true,这种情况成为哈希冲突。