java 类对象的比较
时间: 2023-11-13 09:58:49 浏览: 38
Java中的类对象比较可以使用equals方法或者==运算符进行比较。equals方法比较的是两个对象的内容是否相等,而==运算符比较的是两个对象的引用是否相等。
例如,我们有一个Person类:
```
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// 省略getter和setter方法
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (this == obj) {
return true;
}
if (obj instanceof Person) {
Person person = (Person) obj;
return this.name.equals(person.getName()) && this.age == person.getAge();
}
return false;
}
}
```
我们可以使用equals方法比较两个Person对象是否相等:
```
Person p1 = new Person("Tom", 20);
Person p2 = new Person("Tom", 20);
System.out.println(p1.equals(p2)); // true
```
我们也可以使用==运算符比较两个Person对象的引用是否相等:
```
Person p1 = new Person("Tom", 20);
Person p2 = new Person("Tom", 20);
System.out.println(p1 == p2); // false
Person p3 = p1;
System.out.println(p1 == p3); // true
```