equals()和==

Posted 微尘chq

tags:

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

简单理解就是:==比较的是对像是否相等(包括值和引用),或者基本类型的值是否相等。

                     equals()比较的是对象的值是否相等。(基本类型是没有这个方法的)

==:

1.一般是用来比较基本的数据类型,只要值相等,就是true.

2.比较应用类型,即使值相等,对象不同,地址不同,也是false

 

equals():

1.是用来比较对象的内存地址,即使值相同,对象不同,地址不同,也是false

2.一些特殊的应用类型,如String,Integer,Date在这些类中重写了equals()方法,只要内容相同,即使地址不同,对象不同,也是相等的。(另外要注意Integer这种封装类,在[-127,128]之外的数就会自动装箱)

 

 

以上是关于equals()和==的主要内容,如果未能解决你的问题,请参考以下文章

equals和hashcode

equals和==的区别

equals和==区别 ,equals和hashcode区别

JAVA中的equals()

equals方法

关于equals()和==区别