-2

我正在尝试编写一个递归方法来打印一行中的 n 个星号并在最后创建一个新行。

所以,TriangleOps.line(5);

会打印

    *****

这是我写的代码:

    public static void line (int n){
    if(n>0){
    System.out.println("*");
    line(n-1);
    }}

相反,它打印

    *
    *
    *
    *
    *

最后有很多空间。谁能告诉我如何删除换行符?

4

3 回答 3

2

采用

System.out.print();

反而

println();方法自己在末尾添加换行符

于 2012-10-14T03:33:33.643 回答
2

修改printlnto并在末尾print添加 a :println

public static void line(int n) {
    if (n > 0) {
        System.out.print("*");
        line(n - 1);
    }
    System.out.println();
}
于 2012-10-14T03:35:40.573 回答
1

输入 System.out.print(); 覆盖

打印();通过这样做,该方法自己在末尾添加换行符

于 2016-04-03T16:20:58.213 回答