这是我的代码:
static void Display (int[] [] array, int[] count)
{
System.out.println ("\n\t Original Order");
for (int i = 0 ; i < 3 ; i++)
{
int count1 = 0;
for (int j = 0 ; j < 4 ; j++)
{
System.out.print (array [i] [j] + "\t");
count1 = count1 + array [i] [j];
count [i] = count [i] + array [j] [i];
}
System.out.print (" " + count1);
System.out.println ();
}
System.out.println ();
for (int i = 0 ; i < 4 ; i++)
{
System.out.print (count [i] + "\t");
}
}
如果将数组“count”初始化为4 long并且所有点都填充0,则直接使用变量写入数组“array”。然后,当你运行它时它将工作,除了最后一列(向上和向下)只是一个0.它实际上不会显示最后一列的总和。只是想知道是否有人知道为什么它不起作用,非常有帮助,谢谢!!
答案 0 :(得分:0)
看起来您可能在代码的一个部分中翻转了索引:
count [i] = count [i] + array [j] [i];
我认为你的意思是:
count [i] = count [i] + array [i] [j];
编辑:鉴于您的评论,实际问题是,因为您通过这样做迭代列:
count [i] = count [i] + array [j] [i];
...当你的数组为4长时,你的变量i
只会变为3。