非常基本的Java嵌套for循环问题

Hos*_* BR 0 java loops for-loop

我正在努力让这段代码从5个空格开始并减少到0个空格,每行减去一个空格.

public class Prob3 {

    public static void main(String[]args) {

        for (int x=1; x<=5; x++)
        {
            for (int y=5; y>=1; y--)
            {
            System.out.print(" ");
            }
        System.out.println(x);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当前输出(应为5个空格):

      5
      4
      3
      2
      1
Run Code Online (Sandbox Code Playgroud)

我对目前的进展感到满意,但我需要更接近这一点:

        1
      2
    3
  4
5
Run Code Online (Sandbox Code Playgroud)

我觉得我很亲密

Roh*_*ain 6

将内循环更改为:

for (int y=5; y > x; y--) 
Run Code Online (Sandbox Code Playgroud)

您会注意到每行上的空格数量的模式:

  • 第1行= 4个空格
  • 第2行= 3个空格
  • 第3行= 2个空格
  • 等......

因此,模式是,空格的数量是5 - rowNumber.在你的代码中,外部循环表示rowNumber.内循环应该运行5 - rowNumber很多次.这就是条件应该是y > rowNumber,即y > x.