黑马程序员技术交流社区
标题:
复习:明确为什么一定要复写,equlas()方法
[打印本页]
作者:
萧未然
时间:
2015-11-25 22:42
标题:
复习:明确为什么一定要复写,equlas()方法
package SetDemo;
/**
*哈希表数据结构的集合特点
*/
public class Student{
Student(String name,int age){
this.name=name;//学生姓名
this.age=age;//年龄
}
String name;
int age;
public int hashCode(){
System.out.println("hashCode");
return name.hashCode()+age*37;
}
//为什么一定要复写equals方法呢?因为,hashCode()方法
//不相同就算了,如果相同,那么集合中,就一定以equals的结果为标准,所以
//一定要复写equals方法,否则将会以两个对象的地址值为标准哦
public boolean equals(Object obj){//只能传入Object才是复写
System.out.println("equals");
Student stu=(Student)obj;
return this.name.equals(stu.name)&&this.age==stu.age;
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2