关于数组的问题
int[] ary={};
int[] ary=new int[]{};
int[] ary=null;
这三种形式在内存分配是怎么样的?求高手解惑!
------解决方案--------------------个人觉得以上三句jvm都不会为其分配内存,因为jvm不知道你这个需要多大的内存。所以只会在java栈的本地变量表里面生成3个引用而已。
------解决方案--------------------数组本身就是一个对象,跟其他对象一样分配的,也包含一些字段,如length
第三个并没有在堆中分配内存
------解决方案--------------------只在栈空间里生成三个引用
------解决方案--------------------对象一般要实例化才会分配内存空间。你打印下他们的长度,这只是三个引用。