数组中的输出格式以及如何在for循环之外取值

时间:2015-07-27 18:03:22

标签: java arrays output-formatting

我希望输出显示在虚线之后。每列的第一个必须出现在其列的下方,我尝试将结果插入到数组中,但我无法将其带到for循环之外。

public class SumOfColumn 
{
public static void main(String[] args) 
 {
    int i,j;
    int a[][]={{22,33,44,11},{33,55,77,11},{44,11,88,55},{33,55,22,77}};
    for(i=0;i<4;i++)
     {
         int sum=0;
         for(j=0;j<4;j++)
         {
             System.out.print(a[i][j]+ "\t" );
             sum = sum + a[j][i];
         }
    System.out.println(sum);    
    System.out.println();
    }
        System.out.println("-------------------");
    }
}

这是输出结果出现在行前面我希望结果位于每列下方和虚线下方

22  33  44  11  132

33  55  77  11  154

44  11  88  55  231

33  55  22  77  154

----------------

1 个答案:

答案 0 :(得分:2)

声明for()循环范围之外的结果值。像这样的东西(不测试)

public class SumOfColumn 
{
public static void main(String[] args) 
 {
    int i,j;
    int a[][]={{22,33,44,11},{33,55,77,11},{44,11,88,55},{33,55,22,77}};
    int res[]={0,0,0,0};
    for(i=0;i<4;i++)
     {
         int sum=0;
         for(j=0;j<4;j++)
         {
             System.out.print(a[i][j]+ "\t" );
             sum = sum + a[j][i];
         }
        res[i]=sum;
        System.out.println(sum);    
        System.out.println();
    }
    System.out.println("-------------------");
    for(i=0;i<4;i++)
    {
        System.out.print(res[i]+ "\t" );
    }
    System.out.println();
   }
}