java中==和equals和hashCode的区别
1、equals():用来检测两个对象是否相等,即两个对象的内容是否相等。
2、基本数据类型的==比较的值相等.
类的==比较的内存的地址,即是否是同一个对象,
3、hashCode也是Object类的一个方法。返回一个离散的int型整数。在集合类操作中使用,为了提高查询速度。(HashMap,HashSet等比较是否为同一个)
如果两个对象equals,Java运行时环境会认为他们的hashcode一定相等。
如果两个对象不equals,他们的hashcode有可能相等。
如果两个对象hashcode相等,他们不一定equals。
如果两个对象hashcode不相等,他们一定不equals。
版权声明:本文为huangxiaominglipeng原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。