HashMap和HashTable的区别

来源:互联网 发布:怎么开淘宝店一件代发 编辑:程序博客网 时间:2024/05/16 12:28

HashMap更符合java集合框架的设计思路,更推荐使用。

对于map接口来说,它有两种比较重要的实现类HashMap和HashTable,他们保存元素的时候都是无序的,但是他们有一定的区别。

HashMap和HashTable的区别主要有以下几个方面:

1,HashTable的方法是同步的,HashMap不能同步,所以在多线程场合要使用HashTable。

2,HashTable不允许有null值(key和value都不可以),但是HashMap允许null值(key和value都可以)

3,HashTable有一个contains()方法,功能和containsValue()功能一样。

4,HashTable使用Enumeration,HashMap使用Iterator。

5,HashTable中hash数组的初始化大小及其增长方式不同。

6,哈希值的使用不同,Hashtable直接使用对象hashCode,而HashMap会重新计算hash值。


0 0
原创粉丝点击