1) HashTable 与HashMap实现的是不同的接口
HashTable 是Dictionary的子类
HashMap 是Map接口的子类
2)HashTable的键值都不允许为空,HashMap的键值只允许其中一个为空。
3)HashTable 是多线程安全的
HashMap 是非线程安全的
Hashtable table = new Hashtable();
table.put(new Citizen(“6323″),”1″);
table.put(new Citizen(“4321″),”2″);
table.put(new Citizen(“5678″),”3″);
Enumeration enu = table.keys();
while(enu.hasMoreElements()){
Citizen key = (Citizen)enu.nextElement();
String value = (String)table.get(key);
System.out.println(key + “———-” + value);
}
HashMap table1= new HashMap ();
table1.put(null,”2″);
table1.put(null,”1″);
table1.put(new Citizen(“5678″),”3″);
Iterator iter = table.keySet().iterator();
while(iter.hasNext()){
Citizen key = (Citizen)iter.next();
String value = (String)table.get(key);
System.out.println(key + “———–>” + value);
}