==与equals()方法的区别?

来源:互联网 发布:答题卡制作软件 编辑:程序博客网 时间:2024/05/23 11:54

PS:今天看到一帖子,发现对于这样一个问题,自己又忘记和混淆起来了。在此记录一下。

1、对于基本数据类型而言,只有==,没有equals()方法,也就是只会进行值的比较。

2、对于对象而言,==比较的是内存地址,equals()方法默认是对象之间的比较。如果要使用equals()方法来实现值的比较,就必须覆写equals()方法和hashCode()方法。

3、举个例子:在日常开发中,遇到很多String类型的值比较,我们可以直接使用equals()方法,因为String类本身已经覆写好了Object类的equals()方法和hashCode()方法。