HashTable和HashMap上常见操作(get,put,size)的运行时间(Big O表示法)有什么不同?
答案 0 :(得分:4)
Hashtable
和HashMap
的渐近性之间没有区别,它们是O(1)
和预期put
的可预测的预期摊销O(1)
get
,假设你有一个很好的哈希函数。
最大的区别在于Hashtable
会导致从并发线程同步访问的无偿开销,a)您通常不需要,而b)由ConcurrentHashMap
更有效地完成。你基本上不应该在新代码中使用Hashtable
。