我刚刚阅读了
Java中HashMap和HashTable类之间的区别.在那里我发现了一个区别,前者允许null键和以后不是相同的权限.
就HashMap的工作而言,我知道,它在密钥上调用hashcode方法来查找要放置该键值对的bucket.这是我的问题:
如何计算一个空值的hashcode或者是否有空键的hashcode的任何默认值(如果是,请指定该值)?
就HashMap的工作而言,我知道,它在密钥上调用hashcode方法来查找要放置该键值对的bucket.这是我的问题:
如何计算一个空值的hashcode或者是否有空键的hashcode的任何默认值(如果是,请指定该值)?
解决方法
来自HashMap:
public V put(K key,V value) { if (key == null) return putForNullKey(value); ...
如果你看得更远,你会看到null总是到bin 0