2024年2月8日发(作者:)
java 的 equals用法
在Java中,equals()方法是用来比较两个对象是否相等的方法。
通常情况下,Java中的equals()方法是比较两个对象的引用是否相等。当两个对象的引用相等时,即指向同一个内存地址时,equals()方法返回true;反之,返回false。
然而,有时候我们需要比较两个对象的内容是否相等,而不仅仅是比较引用。这时需要重写equals()方法,以满足我们的需求。
重写equals()方法的一般步骤如下:
1. 首先判断参数是否为null,如果是,则返回false。
2. 然后判断参数和当前对象是否是同一个对象,如果是,则返回true。
3. 接下来需要判断参数是否属于同一类型,如果不是,则返回false。
4. 最后比较两个对象的内容是否相等,如果相等,则返回true;否则返回false。
下面是一个示例代码:
```
public class Person {
private int id;
private String name;
public Person(int id, String name) {
= id;
= name;
}
@Override
public boolean equals(Object obj) {
// Step 1: 判断参数是否为null
if (obj == null) {
return false;
}
// Step 2: 判断参数和当前对象是否是同一个对象
if (obj == this) {
return true;
}
// Step 3: 判断参数是否属于同一类型
if (!(obj instanceof Person)) {
return false;
}
// Step 4: 比较两个对象的内容是否相等
Person otherPerson = (Person) obj;
return == &&
();
}
public static void main(String[] args) {
Person p1 = new Person(1, "John");
Person p2 = new Person(1, "John");
// 比较引用
n(p1 == p2); // false
// 比较内容
n((p2)); // true
}
}
```
在上面的例子中,我们重写了equals()方法,比较了Person对象的id和name属性是否相等。通过调用equals()方法,我们可以比较两个Person对象是否相等。
本文发布于:2024-02-08 08:16:38,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170735139867035.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |