java基础知识—HashTable和HashMap的区别

来源:互联网 发布:淘宝优惠券放在详情页 编辑:程序博客网 时间:2024/06/07 01:56

我看了一下java源代码,并结合书上的知识,总结有四点:
(1)HashTable继承抽象类Dictionary,而HashMap继承自AbstractMap类并实现了Map接口;
(2)HashTable是线程安全的,而HashMap是线程不安全的;
(3)HashTable不容许有null值(key和value都不行),而HashMap容许有null值(key和value都行);
(4)HashTable中hash数目默认是11,增加的方式是2*old+1,而HashMap中的hash数目默认大小是16,并且一定要是2的指数;
(5)哈希值的使用不同,HashTable直接使用对像的hashCode,而HashMap会重新计算hash值。
(6)HashTable使用Enumeration遍历,而HashMap使用Iterator遍历。

0 0
原创粉丝点击