- 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;
- }
- }
复制代码 |
|