Hashtable/HashMap与key/value为null的关系
2017-11-29 15:18
471 查看
1、 HashMap计算key的hash值时调用单独的方法,在该方法中会判断key是否为null,如果是则返回0;而Hashtable中则直接调用key的hashCode()方法,因此如果key为null,则抛出空指针异常。
2、 HashMap将键值对添加进数组时,不会主动判断value是否为null;而Hashtable则首先判断value是否为null。
3、以上原因主要是由于Hashtable继承自Dictionary,而HashMap继承自AbstractMap。
4、虽然ConcurrentHashMap也继承自AbstractMap,但是其也过滤掉了key或value为null的键值对。
相关文章推荐
- 笔记001--Hashtable/HashMap与key/value为null的关系
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null
- Hashtable/HashMap与key/value为null的关系
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null
- HashMap HashTable ConcurrentHashMap key和value是否可以null的问题 源码分析
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null 或者 ""
- HashMap、HashTable的key和value是否可为null
- Java Hashmap Key/Value均可为null, HashTable均不能为null
- HashMap HashTable ConcurrentHashMap key和value是否可以null的问题 源码分析
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null
- HashMap、HashTable的key和value是否可为null