在for循环java中添加空行

时间:2017-10-02 00:45:52

标签: java loops for-loop lines

public class XO {

    public static void main(String[] args) 
    {
        for(int i=1;i<=6;i++)
        {
            for(int j=1;j<=i;j++)
            {
                System.out.print("O");
            }
            for(int k=6;k>=i; k--)
            {
                System.out.print("X");
            }
            System.out.println();
        }   
    }
} 

上面的方法打印出来:

OXXXXXX
OOXXXXX
OOOXXXX
OOOOXXX
OOOOOXX
OOOOOOX

但我需要它来制作它并且无法弄明白

OXXXXXX

OOXXXXX

OOOXXXX

OOOOXXX

OOOOOXX

OOOOOOX

基本上,在行之间添加一个空行。

5 个答案:

答案 0 :(得分:6)

只要您需要空白行,就可以额外拨打println()

public static void main(String[] args) 
{
    for(int i=1;i<=6;i++)
    {
        for(int j=1;j<=i;j++)
        {
            System.out.print("O");
        }
        for(int k=6;k>=i; k--)
        {
            System.out.print("X");
        }
        System.out.println();
        System.out.println();
    }

}

如果在结尾处抑制额外的空行很重要,则需要添加更多逻辑。

答案 1 :(得分:1)

如果我理解你,只需更改println()即可打印两行。变化,

System.out.println();

类似

System.out.println(System.lineSeparator());

只是

System.out.println();
System.out.println();

如果使用两个StringBuilder(s)来保存X和O字符,也可以用单个循环替换所有这些嵌套循环。像,

StringBuilder xs = new StringBuilder("XXXXXX");
StringBuilder os = new StringBuilder("O");
while (xs.length() > 0) {
    System.out.printf("%s%s%n%n", os, xs); //<-- you can also use printf
                                           //    this prints two String(s)
                                           //    and then two lines.
    xs.setLength(xs.length() - 1);
    os.append("O");
}

答案 2 :(得分:1)

for(int i=1;i<=6;i++)
{
    for(int j=1;j<=i;j++)
    {
        System.out.print("O");
    }
    for(int k=6;k>=i; k--)
    {
        System.out.print("X");
    }
    System.out.println();
    System.out.println();

}

答案 3 :(得分:0)

编辑:正如Ted Hopp在对his answer的评论中指出的那样,set_data()可能无法在所有系统上作为线路分隔符工作。所以下面的答案无处不在。

只需替换

const

使用

data

set_data()在打印内部的任何内容后打印换行符(即将您带到下一行)。 "\n"是换行符的表示。在您的代码中,在每个循环之后,//Your code System.out.println(); //Remaining code 函数将控件带到下一行但不在其间留下一行。额外的//Some code System.out.println("\n"); //some code 会将控制权转移到其后的2行。即在两者之间划一条线。

可以实现同样的目标
println()

同样。或者您可以连续使用两个\n语句,如其他答案中所示。选择适合你的任何东西。

答案 4 :(得分:0)

添加额外空白打印语句的最简单方法。

System.out.print("O");

此处,System.out.print("X");和{{1}}行在打印值后不会转到新行。所以我们必须在外部循环中放置一个空白的print语句。每条印刷线之间的空行。我们必须另外写一个空白的印刷声明。