import java.util.HashSet;
class Student
{
String id;
String name;
public Student(String id, String name)
{
this.id = id;
this.name = name;
}
public String toString()
{
return id + ": " + name;
}
@Override
public int hashCode()
{
System.out.println("hashCode: " + id.hashCode());
return id.hashCode();
}
@Override
public boolean equals(Object obj)
{
System.out.println("equals");
return this.id.equals(((Student) obj).id);
}
}
public class A
{
public static void main(String[] args)
{
HashSet hashSet = new HashSet();
hashSet.add(new Student("1", "zhangsan"));
hashSet.add(new Student("1", "zhangsan"));
for (Object s:hashSet)
{
Student s1 = (Student) s;
}
System.out.println(hashSet);
}
}
运行结果: