根据 Kathy Sierra SCJP 6.0 书(第 7 章:泛型和集合,Pg.583,使用地图),我需要覆盖我想用作键的对象类的 equals() 和 hashcode() 方法,否则我将无法找到该键的值。
但根据我的代码,我能够获得价值。为什么?
import java.util.*;
class City {
String name;
City(String name) {
this.name = name;
}
}
public class MyClass {
public static void main(String[] args) {
Map<Object, Object> map = new HashMap<Object, Object>();
City c1 = new City("NewYork");
map.put(c1, "Fashion Capital");
System.out.println(map.get(c1));
}
}
//输出是:“时尚资本”