首页 > 解决方案 > 从字符串数组打印矩阵

问题描述

我有一个字符串二维数组,我需要将其格式化为一个矩阵。我需要的是这样的:

   1  3  4
-124 52  6

 1  2  3  4
 5  6  7  8
-9 -8 -7 -6

  2   3   4   5
  7   8   9  10
-12 -11 -10  -9

我必须考虑矩阵中最长的线,以便矩阵的其他线与之对齐。我已经编写了代码来确定哪一行是最长的,因为它将以此为基础,但我不知道格式化它的确切方法。

这是我在将整数矩阵转换为字符串时确定最长行的长度的代码:

String[][] solution = new String[m][n];
int l = 0;
for (int j = 0; j < m; j++) {
    int temp = 0;
    for (int k = 0; k < n; k++) {
        solution[j][k] = Integer.toString(matrix[j][k]);
        temp += solution[j][k].length();
    }
    if (l < temp) l = temp;
}

标签: javamatrix

解决方案


因此,假设您的数组存储为 array[r][c]。所以你想要做的是遍历列和行。在一个非常简单的基础上,您可以做的是:

if(c>r){建立一个嵌套循环,哪一是外循环}

如果它是 r>c,则做相反的事情。希望有帮助


推荐阅读