使用equals运算符

时间:2020-04-05 19:42:32

标签: equals

使用equals运算符将输出什么代码 打包测试;

创建A类 A级 { 我 int j; 一种() { i = 1; j = 2; } } 测试7是课程

public class test7 {

    public static void main(String[] args) {

obj1和obj2是对象

        A obj1 =new A();*object created*
        A obj2 = new A();
        System.out.println(obj1.equals(obj2));

    }

}

1 个答案:

答案 0 :(得分:1)

equals()方法的目的是使您可以覆盖默认行为:

https://www.geeksforgeeks.org/equals-hashcode-methods-java/

比较浅:

equals方法的默认实现在 Java.lang.Object类,仅检查两个Object引用 (例如x和y)引用同一对象。即检查x == y。 由于Object类没有定义其状态的数据成员,因此 也称为浅层比较。

深度比较:

假设一个类提供了自己的equals()方法的实现, 为了比较该类的对象与对象的状态。 这意味着要比较对象的数据成员(即字段) 与彼此。这种基于数据成员的比较称为 深入比较。

在您的情况下:

  • 因为obj1和obj2是两个不同的对象...
  • ...而且由于您没有重写“ equals()”方法...
  • 然后您将获得默认值:equals()将返回“ false”

尝试一下,看看-编译代码并运行它:)

PS:

请阅读本教程:

MKYong.com: Java – How to override equals and hashCode