equals和hashCode的区别

equals()是用来判断两个对象或变量具体的值是否相等。基础类型判断是否相等时,使用“==”来判断,按java的说话,“==”当用来判断是基础类型是判断内容的,而引用对象是判断内存地址的。
hashCode()是用来产生哈希玛的,该方法返回该对象的哈希码值,而哈希玛是用来在散列存储结构中确定对象的存储地址的,该方法主要支持java.util.HashMap,java.util.Hashtable 等哈希表结构。


Java对于eqauls方法和hashCode方法是这样规定的:
1、如果两个对象相同,那么它们的hashCode值一定要相同;
2、如果两个对象的hashCode相同,它们并不一定相同    

 

©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页