public class DamoTest { public static void main(String[] args){ Student student1=new Student("李华",11,"男"); Student student2=new Student("李华",11,"男"); student1.hashCode(); student2.hashCode(); HashSet<Student>studentHashSet=new HashSet<>(); studentHashSet.add(student1); studentHashSet.add(student2); System.out.println(studentHashSet.size());//1 } } class Student{ private String name; private int age; private String sex; public Student() { } public Student(String name, int age, String sex) { this.name = name; this.age = age; this.sex = sex; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Student student = (Student) o; return age == student.age && Objects.equals(name, student.name) && Objects.equals(sex, student.sex); } @Override public int hashCode() { return Objects.hash(name, age, sex); }
重写equals与hashCode方法比较Set集合的对象
于 2022-06-14 10:29:51 首次发布