我可以在Java的HashMap对象中存储多少个元素

我可以在Java的HashMap对象中存储多少个元素,第1张

我可以在Java的HashMap对象中存储多少个元素

HashMap
Java中的A 最多可以有2 ^ 30个存储桶来存储条目-
这是因为所使用的存储桶分配技术
java.util.HashMap
要求存储桶的数量为2的幂,并且因为ints是用Java签名的,所以最大正值是2 ^
31-1,因此2的最大乘方是2 ^ 30。

但是,实际上,在HashMap中可以存储多少个键/值对没有编程上的限制-

size()
一旦传递2 ^
31-1,该函数就将不再准确。这是因为处理冲突的方式-键落在同一存储桶中的/ value对被链接起来,就像中的节点
linkedList

但是,总的来说,如果您需要跟踪2 ^
30个东西,而在实际应用程序中需要跟踪这些东西,则您需要的内存要比在一台计算机上所依赖的要多得多。我曾经在单个JVM中使用过的最大的HashMap拥有数千万个条目,这些条目都很轻巧



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5498706.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存