老師,你好!Map實體類做key,有什么需要注意的
//學生信息 -- 拓展信息
Map<Student, String> map = new HashMap<Student, String>(16);
map.put(new Student("zhangsan", 22), "優秀學生");
map.put(new Student("lisi", 22), "三好學生");
for (Student student : map.keySet()) {
???? System.out.println("key = " + student);
???? System.out.println("key.name = " + student.getName());
???? System.out.println("key.age = " + student.getAge());
???? System.out.println("value = " + map.get(student));
}
2020-08-04
實體類不適合作為key,實體類他存儲的是引用地址,比較的時候也是引用地址,而不是對象的值,兩次new出來的實體,雖然內容一樣,但是地址不一樣,會作為兩個key來存儲