“==” 与 equals 区别 简化易懂版

2023-04-24,,

首先,我们只需要看Object中的equals 方法写的是啥

很显然,就是一句话,“==” 与 equals方法作用完全一致。

都是用来比较在内存的首地址,即用来比较两个引用变量是否指向同一个对象。

那么为什么网上那么多教程都写的那么多呢,还区分什么String类型StringBuffer对象,其他对象。

我们继续去看源码,String类的equals 方法写的啥

与Object的equals方法完全不一样,String类重写了Object的equals方法,再看内容就是两部分

1、还是“==”;

2、转为String类后字符数组完全相等,也就是说字符串内容完全相同。

因为重写了equals方法,所以String类的“==” 与 equals 就有区别了,所以equals 的比较就变成了:比较要么完全相等,要么字符串内容一致。

以上内容总结两句话:

1、“==” 与 equals方法作用完全一致,都是用来比较在内存的首地址,即用来比较两个引用变量是否指向同一个对象。

2、String类由于重写了equals方法,所以String类的equals 的比较就变成了:比较要么完全相等,要么字符串内容一致。

“==” 与 equals 区别 简化易懂版的相关教程结束。

《“==” 与 equals 区别 简化易懂版.doc》

下载本文的Word格式文档,以方便收藏与打印。