gpt4 book ai didi

java - 在java中调整二维数组的大小

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:52:37 25 4
gpt4 key购买 nike

我一直在做我的编程书上的问题并且遇到了这个问题:

What is the output of the following code?

int[][] array = new int[5][6];
int[] x = {1, 2};
array[0] = x;
System.out.println("array[0][1] is " + array[0][1]);

书上说答案是:

array[0][1] is 2

到目前为止,我了解到调整数组大小是不可能的。据我了解这个问题是

int[][] array = new int[5][6]

正在创建 5 个包含 6 个元素的数组,如果您在控制台上显示它,默认情况下将显示 0

000000
000000
000000
000000
000000

现在据我了解是

array[0] = x;

基本上是将具有 0 的六个元素的第一个数组的大小调整为具有 2 个元素的数组:1 和 2。

我不明白什么?难道是

array[0] = x;

正在这样做,所以它实际上只是更改第一个数组的索引 0 元素和索引 1 元素?并在数组 [0] 中将索引 2、3、4、5 元素保持为 0?

我发现了这个问题 Resize an Array while keeping current elements in Java?但我不认为这有助于我回答这个问题。

最佳答案

这一行

array[0] = x;

没有调整数组 array[0] 的大小;它正在替换数组 array[0] 这样 array 现在是

12
000000
000000
000000
000000

旧的 array[0] 现在被丢弃,它将被垃圾收集。现在 array[0]x 指的是同一个数组对象,{1, 2}

关于java - 在java中调整二维数组的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30601860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com