Java 只希望填充二维数组的顶行和底行

Java 只希望填充二维数组的顶行和底行,java,arrays,Java,Arrays,我只想填充未初始化数组的顶行和底行: for (int i = 0; i < ROWS; i++) { for (int j = 0; j < COLUMNS; j++) { if (i == 0 || i == (ROWS - 1)) { values[i][j] = i; } } } 为什么会这样?Java中任何int的默认值都是零(0)。因此,任何未设置的都将具有此值。无论是单个int还是它们的数组都是如

我只想填充未初始化数组的顶行和底行:

for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLUMNS; j++) {
        if (i == 0 || i == (ROWS - 1)) {
            values[i][j] = i;
        }
    }
}

为什么会这样?

Java中任何
int
的默认值都是零(0)。因此,任何未设置的都将具有此值。无论是单个
int
还是它们的数组都是如此。其结果是代码未触及的行包含零。

Java中任何
int
的默认值为零(0)。因此,任何未设置的都将具有此值。无论是单个
int
还是它们的数组都是如此。这样做的结果是代码未触及的行包含零。

只需显式访问顶部和底部行即可:

for (int i=0; i < ROWS; i+=ROWS-1) {
    for (int j=0; j < COLUMNS; j++) {
        values[i][j] = i;
    }
}
for(int i=0;i

这样可以避免不必要地迭代每一行。请注意,您看到的零可能是
int
数组的默认值。

只需显式访问顶部和底部行即可:

for (int i=0; i < ROWS; i+=ROWS-1) {
    for (int j=0; j < COLUMNS; j++) {
        values[i][j] = i;
    }
}
for(int i=0;i

这样可以避免不必要地迭代每一行。请注意,您看到的零可能是
int
数组的默认值。

其他是默认值0是java中整数数组的默认值。如果数组中包含空整数就没有意义了。其他的是默认值0是java中整数数组的默认值。让一个数组包含空整数是没有意义的。