hashmap和hashtable的内部数据结构有何不同,它们在以下差异中表现出来?
我认为他们两个本质上都是内部的“桶”数组。
答案 0 :(得分:2)
虽然他们都使用哈希值来识别其中的元素。所以他们无法保证订单。对于你提到的不同,这是因为他们扩展了不同的抽象类。 Dictionary是一个抽象的映射类,键必须是非null值。只有一个建议,对于这种问题,你可以在JDK中找到更多的东西,不要害怕检查它。
public class Hashtable<K,V>
extends Dictionary<K,V>
implements Map<K,V>, Cloneable, java.io.Serializable {
public class HashMap<K,V>
extends AbstractMap<K,V>
implements Map<K,V>, Cloneable, Serializable
答案 1 :(得分:0)
答案 2 :(得分:0)
除非您正在研究考古学,否则您应该使用HashMap和ConcurrentHashMap(线程安全)。请将它们分配给Map接口实例,除非您使用特定于其中的方法。