获得额外的空行

时间:2016-02-14 17:44:37

标签: java

当我运行此代码后,在输入第一个数字并打印楼梯之前,我得到了额外的一行。

6


     #
    ##
   ###
  ####
 #####
######

您可以看到6和楼梯之间的附加线

import java.util.*;

public class Solution {

public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    int n = in.nextInt();
    System.out.println("");
    for(int i=0;i<=n;i++){
        System.out.print(new String(new char[n-i]).replace("\0", " "));
        System.out.print(new String(new char[i]).replace("\0", "#"));
        System.out.println("");
    }
}
}

2 个答案:

答案 0 :(得分:4)

在第一次迭代中,您正在打印n空白和零#

在打印一个i = 1之前,在循环中初始化n-1将仅打印#个空白。

答案 1 :(得分:1)

除了@ guy的回答,只需将i初始化为1即可解决您的问题。

for(int i=1; i<=n; i++)