首页 > 解决方案 > 可以打印4列吗?

问题描述

我想知道是否可以在输出中打印 4 列,其中包含数字。

我知道我们可以打印很多列,但我不确定嵌套的 for 循环

例如,这是我到目前为止所做的。

for(int x = 1; x <=5; x++)
  {
     for(int y = 1; y<5; y++)
     {
        int area = (x*y);           
        int perimeter = (2*x + 2*y);

但现在我被困在如何将它们并排打印成四列。

例子:

输出示例

标签: javanested-loops

解决方案


这将让您在 4 个单独的列中打印出数字。

使用System.out.printf()允许您格式化给定给每个数字的间距。在下面的代码中,它为每个分配 4 个空格xy然后为areaand分配 5 个空格perimeter

System.out.print("  X   Y Area Perimeter\n"); // Column headers

for(int x = 1; x <=5; x++) {

     for(int y = 1; y<5; y++) {

        int area = (x*y);           
        int perimeter = (2*x + 2*y);

        // Prints the numbers out with formatted spacing
        System.out.printf("%4d%4d%5d%5d\n", x, y, area, perimeter);
     }
}

您可以根据自己的喜好调整间距。我只是把这些数字放在一起,这样它就可以更好地与标题对齐。


推荐阅读