Java 7 HashMap中单个条目(键值对)的内存开销是多少?(使用64位Oracle热点JVM)

Java 7 HashMap中单个条目(键值对)的内存开销是多少?(使用64位Oracle热点JVM),java,Java,Java HashMap中单个条目的内存开销是多少?(使用64位Oracle热点JVM)。例如:是24字节还是32字节?一个HashMap集合需要每个条目32字节加上4字节*条目数组的映射容量。是(Java 6)或(Java 8)的大小,两者都有一个int和三个引用 如果引用为4字节(压缩OOPS),则12字节头+4字节int+3*4字节引用=28字节,四舍五入为32字节,以适应8字节边界 如果引用为8字节,则16字节头+4字节int+3*8字节引用=44字节,四舍五入为48字节,以适应8字节边

Java HashMap中单个条目的内存开销是多少?(使用64位Oracle热点JVM)。例如:是24字节还是32字节?

一个HashMap集合需要每个条目32字节加上4字节*条目数组的映射容量。

是(Java 6)或(Java 8)的大小,两者都有一个
int
和三个引用

如果引用为4字节(压缩OOPS),则12字节头+4字节
int
+3*4字节引用=28字节,四舍五入为32字节,以适应8字节边界

如果引用为8字节,则16字节头+4字节
int
+3*8字节引用=44字节,四舍五入为48字节,以适应8字节边界