我们可以在Java中调整数组的大小吗?
我们可以在Java中调整数组的大小吗?如果没有,请解释一下:
int arr[] = new int[1]; arr[0]=-10;
//arr[1]=1;
arr=new int[2]; //Explain this
arr[0]=-1;
arr[1]=1;
System.out.println(arr[0]+" "+arr[1]);
回答:
就我而言,调整数组大小是不可能的。
要了解代码为什么起作用,您需要了解数组是引用类型。arr
持有对实际数组的引用,如下所示:
holds points toarr ----------> reference -----------> array object
在这一行:
arr=new int[2];
最终,您对数组对象不做任何事情。您基本上是在说:
嘿
arr
。我不希望您再保留 该 参考。放开并保持 该 引用(这是一个长度为2的数组)!
“那么长度为1的原始数组对象会发生什么?” 你问。这是GC到位的地方。在某个时候,将收集没有引用指向的对象。
以上是 我们可以在Java中调整数组的大小吗? 的全部内容, 来源链接: utcz.com/qa/416724.html