除了线程安全性 :
还有区别,hashMap的键和值都允许为空
HashTable的键绝对不允许为空
但是值可以为空
package 测试数据用;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Map;
public class Test1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Map<Object,Object> map = new HashMap<Object, Object>();
map.put(null, "s1");
map.put(null, "s2");
System.out.println(map.get(null)); //不报错
Map<Object,Object> map2 = new Hashtable<Object,Object>();
map2.put(null, "t1");
System.out.println(map2.get(null)); //报错
}
}