我想创建一个二维数组。 我可以编译但无法运行
public class Arraytest1 {
public static void main(String[] args) {
int i, j, k = 0;
int test[][] = new int[4][5];
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++) {
test[i][j] = k;
k++;
}
}
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; k++)
System.out.print(test[i][j] + " ");
System.out.println();
}
}
}
答案 0 :(得分:7)
你有一个无限循环:for(j=0;j<5;k++)
,你必须写for(j=0;j<5;j++)
您递增k
而不是j
答案 1 :(得分:0)
你有一个无限循环。您正在递增k
而不是j
:
for(j=0;j<5;k++)
您应该将其更改为
for(j=0;j<5;j++)
答案 2 :(得分:0)
这里......这应该有效。只需更改子循环,使其成为j++
,而不是k++
顶部和底部
public static void main(String[] args) {
int i, j, k = 0;
int test[][] = new int[4][5];
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++) {
test[i][j] = k;
k++;
}
}
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++)
System.out.print(test[i][j] + " ");
System.out.println();
}
}
答案 3 :(得分:0)
我认为你在第二个for-loop“块”中混淆了k和j变量。当我改为:
...
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++)
System.out.print(test[i][j] + " ");
System.out.println();
}
...
我将以下内容打印到我的控制台:
0 1 2 3 4
5 6 7 8 9
10 11 12 13 14
15 16 17 18 19
这是你想要的吗?
答案 4 :(得分:-1)
public class Arraytest1 {
public static void main(String[] args) {
int i, j, k = 0;
int test[][] = new int[4][5];
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++) {
test[i][j] = k;
k++;
}
}
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++) {
System.out.print(test[i][j] + " ");
System.out.println();
}
}
}
}
您可以解决此问题