gpt4 book ai didi

java - ConcurrentHashMap 与 HashMap 和 NullPointerException

转载 作者:行者123 更新时间:2023-11-29 04:48:35 25 4
gpt4 key购买 nike

<分区>

目前我正在使用 ConcurrentHashMap 并且我对 HashMap 非常熟悉,我期待与 HashMap 类似的行为,但是当我插入一个 null 键或值时,ConcurrentHashMap 抛出一个 NullPointerException

我看到了他们的来源,ConcurrentHashMap 的片段:

...
public V put(K key, V value) {
return putVal(key, value, false);
}
...
final V putVal(K key, V value, boolean onlyIfAbsent) {
if (key == null || value == null) throw new NullPointerException();
....

HashMap 的片段:

...
public V put(K key, V value) {
return putVal(hash(key), key, value, false, true);
}
...
final V putVal(int hash, K key, V value, boolean onlyIfAbsent, boolean evict) {
Node<K,V>[] tab; Node<K,V> p; int n, i;
// It Doesn't check null key or value.
....

为什么它们在使用 null 键或值时如此不同?这对我来说没有意义。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com