我们可以在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 to

arr ----------> reference -----------> array object

在这一行:

arr=new int[2];

最终,您对数组对象不做任何事情。您基本上是在说:

arr。我不希望您再保留 参考。放开并保持 引用(这是一个长度为2的数组)!

“那么长度为1的原始数组对象会发生什么?” 你问。这是GC到位的地方。在某个时候,将收集没有引用指向的对象。

以上是 我们可以在Java中调整数组的大小吗? 的全部内容, 来源链接: utcz.com/qa/416724.html

回到顶部