HashMap、HashTable、HashSet区别

来源:互联网 发布:origin图中点显示数据 编辑:程序博客网 时间:2024/05/16 18:42

HashTable:

1.线程安全。2.key不可以为null3.value不可以为null,抛出NullPointerException()。4.遍历使用Enumeration。

HashMap:

1.线程不安全。2.key、value可以为null3.遍历使用Iterator。

HashSet:

1、HashSet基于HashMap实现,无容量限制。2、HashSet是非线程安全的。 3、HashSet不保证有序。 

碎碎念:

1.HashTable有一个contains方法,容易引起混淆,HashMap中去掉了。不过两个类都有containsKey和containsValue方法。2.Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。3.由于HashMap线程不安全,所以效率可能高于HashTable。(自己没有测试过)
0 0
原创粉丝点击