我想知道在 ConcurrentHashMap
上调用的 size()
方法是否与通常的 size()
方法具有相同的复杂性哈希表。
最佳答案
ConcurrentHashMap.size() 的新实现在 JDK 8 中使用了一种很酷的算法,它们是从 LongAdder 复制粘贴的。 .
实际上,ConcurrentHashMap.size()
的复杂度几乎是恒定的( Nerd 语言中的“O(1)”)并且与 HashMap.size( )
可以忽略不计。不相信我?打开我的基本test project自己跑一跑。我当前的机器上没有安装 JDK 7,如果能得到关于 Java 1.7 与 Java 1.8 的时间成本对比的反馈会很酷。
关于java - 并发 hashmap size() 方法复杂度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10754675/