21xrx.com
2024-12-23 01:38:07 Monday
登录
文章检索 我的文章 写文章
Java中的equals方法详解及案例
2023-06-16 09:03:21 深夜i     --     --
Java equals方法 对象比较

在Java中,equals方法是用于比较两个对象是否相等的方法。在开发中,经常需要判断两个对象是否相等,这时候就需要使用equals方法了。本文将详细介绍equals方法及其应用案例。

equals方法的使用方法

equals方法是Object类中的一个方法,其通用格式如下:

public boolean equals(Object obj)

其中,obj为另一个对象,equals方法会比较调用者和obj是否相等。如果相等,返回true,否则返回false。

需要注意的是,equals方法的默认实现是将两个对象的引用比较,即判断它们是否指向同一个内存地址。

如果我们要比较两个对象的内容是否相等,则需要重写equals方法。下面是一个重写equals方法的示例:

public class Student {

  private String name;

  private String id;

  public Student(String name, String id)

    this.name = name;

    this.id = id;

  @Override

  public boolean equals(Object obj) {

    if (obj == null) return false;

    if (!(obj instanceof Student)) return false;

    Student student = (Student) obj;

    return this.id.equals(student.id) && this.name.equals(student.name);

  }

}

在上述示例中,重写了Student类的equals方法,实现了对两个学生对象的内容比较。

equals方法的应用案例

下面我们来看一个通过equals方法比较两个字符串对象的案例:

public class EqualsDemo {

  public static void main(String[] args) {

    String s1 = "hello";

    String s2 = "hello";

    String s3 = new String("hello");

    System.out.println("s1.equals(s2): " + s1.equals(s2)); // true

    System.out.println("s1.equals(s3): " + s1.equals(s3)); // true

    System.out.println("s2.equals(s3): " + s2.equals(s3)); // true

  }

}

在上述示例中,我们比较了三个字符串对象的内容是否相等,发现它们的equals方法返回值都为true。这是因为String类已经重写了equals方法,实现了对内容的比较。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复