Java软件开发基础知识梳理之(4)------HashTable与HashMap区别

来源:互联网 发布:sql serverr2安装教程 编辑:程序博客网 时间:2024/05/16 12:55
1 线程安全:HashTable是线程安全,HashMap是非线程安全
2 是否允许null: HashTable的key和value均不允许为null,HashMap的key和value均允许null
3 HashTable有一个contains(Object value),功能和containsValue(Object value)功能一样, HashMap只有containsValue(Object value)
4 HashTable使用Enumeration,HashMap使用Iterator
5 HashTable中hash数组默认大小是11,增加的方式是 old*2+1。HashMap中hash数组的默认大小是16,增加的方式是 old*2
6 计算hashCode时,HashTable直接使用对象的hashCode, HashMap重新计算hash值
7 Hashtable继承自Dictionary类,而HashMap继承自AbstractMap类。但二者都实现了Map接口
8 Hashtable、HashMap都使用了 Iterator。而由于历史原因,Hashtable还使用了Enumeration的方式
0 0
原创粉丝点击