我正在尝试一些新波士顿视频的练习,但无法让它发挥作用!我是java的新手,这是我的第一堂课。我有一个二维数组的任务,我无法弄清楚如何让它在屏幕上显示。这个练习来自Thenewboston的Java教程,视频#34,对他有用!
public class inventory {
public static void main (String[] args) {
int firstarray[][]= {{8,9,10,11},{12,13,14,15}};
int secondarray[][]={{30,31,32,33},{43},{4,5,6}};
System.out.println("This is the first array");
display(firstarray);
System.out.println("This is the second array");
display(secondarray);
}
public static void display (int x[][])
{
for(int row=0;row<x.length;row++)
{
for(int column=0;column<x.length;column++);
System.out.print(x[row][column]+"\t");
}
{
System.out.println();
}
} }
答案 0 :(得分:6)
你在for循环之后放了;
,否定了你认为它的身体。摆脱
for(int column=0;column<x.length;column++); // <--- this ;
在这种情况下,声明for
变量且具有范围的column
循环的主体是)
之后和;
之前的所有内容。换句话说,没什么。实际上,您需要将;
替换为{
。
正确的缩进将帮助您编写语法正确的代码。
答案 1 :(得分:1)
在循环结束时你有分号,而不是很好的格式化。还有两个括号,绝对没用:)。正确的代码可能如下所示:
public static void display(int x[][]) {
for (int row = 0; row < x.length; row++) {
for (int column = 0; column < x.length; column++) {
System.out.print(x[row][column] + "\t");
}
System.out.println();
}
}
显示功能仍然不正确,最后失败,因为行和列的长度不同。
如果你想在第二个周期中使用它,你应该考虑实际ROW的长度,而不是多少行(x.length
)。
您只需将column < x.length
更改为column < x[row].length
所以工作代码是这样的:
public static void display(int x[][]) {
for (int row = 0; row < x.length; row++) {
for (int column = 0; column < x[row].length; column++) {
System.out.print(x[row][column] + "\t");
}
System.out.println();
}
}