在java中声明后分配给数组的字节数
在Java中,如何检查声明后分配给数组的字节数? 例如:
int[] a = new int[10];
数组“a”被分配4*10字节,因为int的大小是4字节,并且有10个整数元素。有没有一种非手工的方法
你可以在下面搜索框中键入要查询的问题!
在Java中,如何检查声明后分配给数组的字节数? 例如:
int[] a = new int[10];
数组“a”被分配4*10字节,因为int的大小是4字节,并且有10个整数元素。有没有一种非手工的方法
# 1 楼答案
实际上
int[10]
的大小是56字节或更多(取决于您的JVM)但这一切都取决于操作系统的JVM和内存体系结构
java.lang.instrumentation.Instrumentation
提供了一种计算对象大小的方法,如this answer中所述# 2 楼答案
在Java中,没有像C中的
sizeof
这样的运算符来获取数组元素的大小。所以至少没有直接的方法顺便说一句,声明期间不分配内存,只在初始化期间分配
声明:
初始化: