equals 跟== 的区别

==操做比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。
equals操做表示的两个变量是不是对同一个对象的引用,即堆中的内容是否相同。

==比较的是2个对象的地址,而equals比较的是2个对象的内容(在equals是直接调用object的equals方法时)。
显然,当equals为true时,==不必定为true;spa

 

说equals比较的是值是彻底不对的。要看他是否有重写object的equals方法。若是没有,他比较的确定是也地址。若是有,那么颇有可能他比较的是值
相关文章
相关标签/搜索