代码改变世界

==和equals的区别

2022-02-14 17:47  若藜520  阅读(34)  评论(0编辑  收藏  举报

==是对栈的内容进行比较,equals是对堆的内容进行比较(没有重载的情况下还是对栈进行比较)

==对于基本类型(包括string)来说是比较其数值是否相等,对于string以外的引用类型是比较其引用地址是否相等,string类型做了特殊处理,只比较值是否相等

equals在没有重载的情况下是和==一样的,重载后比较堆内容是否一样

 

参考https://zhuanlan.zhihu.com/p/58126578

https://www.cnblogs.com/dearbeans/p/5351695.html