显示阵列ColumnWise

时间:2013-11-26 05:38:02

标签: java arrays multidimensional-array

我需要显示一个数字数组。输出必须是这样的:

10 25 29 13 46 30 26 57 41 34 88 52 60 77 82

我目前正在使用它,但它没有按列显示,这是我的输出:

10 13 26 34 60 25 46 57 88 77 29 30 41 52 82

我在这里找到了一个类似的问题答案,但它的行长度并不相同,所以我觉得使用它不会有帮助。

这是我的代码(我也是java新手):

public class test
{
public static void main(String[] args)
{

int rows = 3;
int cols = 5;


int intar [][] = {  {10, 13, 26, 34, 60} ,
                {25, 46, 57, 88, 77},
                {29, 30, 41, 52, 82} };



for (int i = 0; i < rows; i++) {
  for (int j = 0; j < cols; j++) {
    System.out.print ( intar[i][j] + " " );
  }
}


}
}

5 个答案:

答案 0 :(得分:3)

您可以按如下方式进行一些小改动:

来自

    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            System.out.print(intar[i][j] + " ");
        }
    }

    for (int j = 0; j < cols; j++) {
        for (int i = 0; i < rows; i++) {
            System.out.print(intar[i][j] + " ");
        }
    }

在控制台输出;

 10 25 29 13 46 30 26 57 41 34 88 52 60 77 82 

答案 1 :(得分:1)

切换以下两行:

for (int j = 0; j < cols; j++) {
    for (int i = 0; i < rows; i++) {

答案 2 :(得分:0)

只需用此

替换你的for循环
 for (int i = 0; i < cols; i++) {
  for (int j = 0; j < rows; j++) {
    System.out.print ( intar[j][i] + " " );
  }
  System.out.println();
}

答案 3 :(得分:0)

你很亲密,这是

for (int i = 0; i < cols; i++) {
  for (int j = 0; j < rows; j++) {
    System.out.print(intar[j][i] + " ");
  }
}

答案 4 :(得分:-1)

添加新行

for (int i = 0; i < rows; i++) {
  for (int j = 0; j < cols; j++) {
    System.out.print ( intar[i][j] + " " );
  }
    System.out.print ( "\n" );
}

BTW你也想做填充