"=="和equals方法的区别?

Posted duangxcg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了"=="和equals方法的区别?相关的知识,希望对你有一定的参考价值。

 ==比较的是2个对象的地址,而equals比较的是2个对象的内容。显然,当equals为true时,==不一定为true。

对于下面的代码:

     String a=new String("foo");

     String b=new String("foo");

     两条new语句创建了两个对象,然后用a,b这两个变量分别指向了其中一个对象,这是两个不同的对象,它们的首地址是不同的,即ab中存储的数值是不相同的,所以,表达式a==b将返回false,而这两个对象中的内容是相同的,所以,表达式a.equals(b)将返回true

以上是关于"=="和equals方法的区别?的主要内容,如果未能解决你的问题,请参考以下文章

"=="和equals方法的区别?

彻底弄懂Java中的equals()方法以及与"=="的区别

java容器中关于equals的重写

java中hashcode和equals这两个方法的用法?

"=="和equals

"".equals--双引号的equals是啥意思?跪求解释