java - 幻方的 Printf

标签 java printf magic-square

所以这是我下面的代码:

public void printSquare() {
    for (int row = 0; row < square.length; row++) {
        for (int col = 0; col < square.length; col++) {
            System.out.printf(square[row][col] + "%-3c", ' ');
        }
        System.out.println();   
    }
}

我正在尝试将它们打印为如下所示:

enter image description here

但我的输出是:

*****方2 *****

30  39  48  1  10  19  28  
38  47  7  9  18  27  29  
46  6  8  17  26  35  37  
5  14  16  25  34  36  45  
13  15  24  33  42  44  4  
21  23  32  41  43  3  12  
22  31  40  49  2  11  20

我已经摆弄 printf 一段时间了,但我似乎不知道如何整齐地打印它。我在学校的第二个学期才刚刚接触 Java,所以我还不太擅长编码。任何建议都会有帮助。

如果我的编码不正统或看起来很糟糕,请告诉我,以便我可以修复它。

谢谢。

最佳答案

您可以尝试添加制表符空格而不是手动添加空格。制表符空格将解决数字与空格的问题

public static void printSquare(int[][] square) {
    for (int row = 0; row < square.length; row++) {
        for (int col = 0; col < square.length; col++) {
            System.out.print(square[row][col]+"\t");
        }
        System.out.println();
    }
}

输出

30  39  48  1   10  19  28  
38  47  7   9   18  27  29  
46  6   8   17  26  35  37  
5   14  16  25  34  36  45  
13  15  24  33  42  44  4   
21  23  32  41  43  3   12  
22  31  40  49  2   11  20

关于java - 幻方的 Printf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48879284/

相关文章:

algorithm - 如何创建具有常量行列总和的 1's and 0' 的对称矩阵

Java + HtmlUnit WebClient + SSL 页面

java.sql.SQLException : Connection is closed [POOL-HikariCP] 异常

java - 创建类路径资源中定义的名为“entityManagerFactory”的 bean 时出错

ocaml - 是否可以在ocaml中重现python的字符串插值?

c - 有没有更好的方法来缓解这个警告?

python - 优化幻方生成时出现问题

java - 不可变对象(immutable对象)是否不受不当发布的影响?

c - 如何在 printf 中隐藏前导零

java - 幻方最终值始终为真