public boolean equals(Object obj){
if(obj==null){
return false;
}
if(obj instanceof Person){
Person p3=(Person)obj;
if(this.name==p3.name&&this.age==p3.age){
return true;
}
}
return false;
}
例:equals()方法练习(提高)---提示:需要在Person类中复写equals()
自定义一个Person类,有name和age属性,并一个两个参数的构造函数,在主函数main中,定义两个Person对象p1和p2,如下,调用equals比较这个两个对象是否相等。
Person p1 = new Person(“xiaowang”,12);
Person p2 = new Person(“xiaowang”,12);
p1.equals(p2);
package lei;
public class Person {
String name;
int age;
public Person(String name,int age){
this.name=name;
this .age=age;
}
public boolean equals(Object obj){
if(obj==null)
return false;
if(obj instanceof Person){
Person p3=(Person)obj;
if(this.name==p3.name&&this.age==p3.age)
return true;
}
return false;
}
public static void main(String [] args){
Person p1=new Person("xiaowang",12);
Person p2=new Person("xiaowang",12);
System.out.println(p1.equals(p2));
}
}