在MyData类中重写equals()方法,public boolean equals(Object o),当MyDate类型对象的年月日都相同时,结果为true,否则为false。
public class MyDate {
int year;
int month;
int day;
public MyDate(int year, int month, int day) {
this.year = year;
this.month = month;
this.day = day;
}
public boolean equals(Object obj) {
int flag = 1;
if (obj instanceof MyDate) {
flag = 0;
MyDate m = (MyDate) obj;
if (m.year != this.year)
flag += 1;
if (m.month != this.month)
flag += 1;
if (m.day != this.day)
flag += 1;
}
if (flag == 0) {
return true;
} else {
return false;
}
}
}
flag的应用很巧妙。