ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 实例 注意要重写hashCode()和equals()方法. ~~~ public class Student { private String name; private int age; public Student(String name, int age) { this.name = name; this.age = age; } @Override public String toString() { return "Student{" + "name='" + name + '\'' + ", age=" + age + '}'; } @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); } @Override public int hashCode() { return Objects.hash(name, age); } } ~~~ ~~~ Map<Student, String> m = new HashMap<>(); m.put(new Student("jack", 20), "1"); m.put(new Student("milan", 18), "2"); m.put(new Student("milan", 18), "2"); Set<Student> s = m.keySet(); Iterator<Student> it = s.iterator(); while (it.hasNext()) { Student stu = it.next(); System.out.println(m.get(stu)); } ~~~