面试回答:
○ HashMap允许key和value值为null的情况,而Hashtable不允许;
○ Hashtable是同步的,而HashMap不是。故HashMap适用于单线程环境,HashTable适用于多线程环境。
○ 在Java1.4后引入了LinkedHashMap(HashMap的一个子类),假如你想要遍历顺序,很容易从HashMap转向LinkedHashMap,而HahTable不是这样的,它的顺序是不可预知的。
○ HashMap提供对key的Set进行遍历,因此它是一个fail-fast的,但HashTable提供对key的Enumeration进行遍历,它不支持fail-fast。
○ HashTable被认为是一个遗留的类,如果需要在迭代的时候修改Map,可以使用CocurrentHashMap
【HashMap和HashTable有什么区别?】--面试回答
最新推荐文章于 2024-04-27 13:30:54 发布