黑马程序员技术交流社区
标题:
重写equals的心得
[打印本页]
作者:
黑马小成
时间:
2015-4-26 23:02
标题:
重写equals的心得
/*@Override
public boolean equals(Object obj) {//equals原本比较的是对象的地址值,如果是同个对象就返回true,否则返回false,由于比较的类型是不同个对象,但是内容
//相同,则为视为同个对象,原本的equals不符合需求所以必须重写。
//提高效率
if(this == obj){//如果是同个对象,直接返回true,如果不是同个对象有
return true;//两可能,是同个类或者不是同个类,
}
//提高健壮性
if (!(obj instanceof Student)) {//如果obj不属于这个类,就直接返回False,属于这个类就运行下个语句比较对象里面的内容
return false;
}
//向下转型
Student s = (Student) obj;//因为传进来的是Obj类型,所以必须向下转型。
return this.name.equals(s.name) && this.age == s.age;//比较具体内容,s.name是对象用equals比较,值用==比较
}
*/
复制代码
作者:
怀念子龙
时间:
2015-4-27 08:39
重写equals就是想怎么写就怎么写。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2