Java教程

== 操作符和 equals()的区别

本文主要是介绍== 操作符和 equals()的区别,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

==:是一个运算符

1、可以使用在基本数据类型变量和引用数据类型变量中

2、如果比较的是基本数据类型变量,比较两个变量保存的数据,是否相等,(不一定类型相同)

3、如果比较的是引用数据类型变量,比较两个对象的地址值,是否相等。

equals():是一个方法

1、A.equals(B),返回true或者false

2、只能够适用于引用数据类型

3、Object类中equals()方法的定义:

public boolean equals(Object obj) {
    return (this == obj);
}

此时表明:在Object类中定义的equals()方法和“==”运算符的作用是相同的;

4、像String、Data、File、包装类等,都重写了Object类中的equals()方法。重写以后,比较的不是两个引用的地址是否相同,而是比较两个对象的 "实体内容" 是否相同。

5、通常情况下,我们自定义的类如果使用equals()的话,也通常是比较两个对象的 “实体内容”,是否相同,那么我们就需要重写Object类中的equals()方法。

这篇关于== 操作符和 equals()的区别的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!