例如,在java中声明new int[n][n]
将导致n个数组引用,每个数组包含n个元素。
如果我声明new int[n][]
,这会占用多少内存?我怀疑它只是n引用null,但我想证实这一点。
答案 0 :(得分:2)
在Java中,我们有以下大小:
int
= 4个字节
int[]
= 4N + 24字节
int[][]
~4MN字节
Array
=每个数组条目的24字节+内存
因此,您的数组new int[n][]
是从0
到n
的一维数组。通常,每个数组条目需要4N+24
个字节(24
个字节用于数组+ 4*N
个字节。
顺便说一下,它依赖于JVM,可能是一个更准确的答案是~4N
字节加上标题信息。