java – Hashtable使用多少内存?
在
Java中,如果我创建一个Hashtable< K,V>并将N个元素放在其中,占用多少内存?如果依赖于实现,什么是好的“猜”?
解决方法
编辑;哦,geez,我是个白痴,我给了HashMap的信息,而不是HashTable.然而,在检查之后,为了存储目的,这些实现是相同的.
这取决于您的VM的内部存储器设置(项目的打包,32位或64位指针和字对齐/大小),并没有被java指定. 估计内存使用的基本信息可以在here中找到. 你可以像这样估计: >在32位虚拟机上,一个指针是4字节,在64位虚拟机上,它是8字节. 所以,把它放在一起(对于32/64位的Sun HotSpot JVM): 或大致(至多默认设置,不能保证是准确的): > 32位JVM:36字节32字节/映射键&值 注意:这需要更多的检查,64位VM上的对象开销可能需要12个字节.我不知道空值 – null的指针可能会被压缩. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |