關于自動生成equals()方法
這里我可以使用重寫后自動生成的equals()方法嗎??
這是在Sourse-Generate hasCode() and equals()
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Course other = (Course) obj;
if (course == null) {
if (other.course != null)
return false;
} else if (!course.equals(other.course))
return false;
return true;
}
2015-11-07
視屏中重寫了equal方法,他是比較了name的值是否相等;如果自動重寫,比較的是id和name兩個值都相同時候才返回true;可以手動把自動生成的id比較代碼去掉,那么和手動是一樣的效果;
一下是自動生成的:
public boolean equals(Object obj) {
???? if (this == obj)
???? return true;
???? if (obj == null)
???? return false;
???? if (getClass() != obj.getClass())
???? return false;
???? Course other = (Course) obj;
???? if (id == null) {
???????????????? if (other.id != null)
???????????????? return false;
???? } else ????if (!id.equals(other.id))
???? ???????????? return false;
???? if (name == null) {
???????????????????? if (other.name != null)
???????????????????? return false;
???? } else ????if (!name.equals(other.name))
???????????????? return false;
?????return true;
}
2015-09-16
運行一遍檢測一下,眼瞅著挺正確。