对于 key不能为 null, 估计是作者不喜欢 null 的 key 的原因
为什么 value 不能为 null?
因为 ConcurrentHashMap 工作于多线程环境,如果 ConcurrentHashMap.get(key)返回null,就无法判断值是 null ,还是没有该 key;而单线程的 HashMap 却可以用 containsKey(key) 判断是否包含了这个 key。