For Loop to Recursion Statement - 语法

时间:2016-10-21 12:08:49

标签: recursion

我被要求用输出创建一个赋值:只要数字是正数,它就会像下面一样执行。

Please enter a number: 4
****
***
**
*
**
***
****

这适用于创建的for循环:但是,我被告知没有循环或任何可以使用的循环。我被要求将其更改为递归方法,并在(2)if else语句中使用调用。但是,我已经阅读了所有可用的已发表论文,将for循环更改为递归但我没有成功,我非常感谢一些深入澄清的帮助。

    static void printPattern(int pattern) {
        for (int i=0; i<pattern; ++i) {
            System.out.print("*");
        }
        System.out.println();
    }

    public static void printStars(int lines) {
        if (lines<=1) {
            printPattern(1);
        } else {
            printPattern(lines);
            printStars(lines-1);
            printPattern(lines);
        }
    }
}

1 个答案:

答案 0 :(得分:0)

尝试

static void printPattern(int pattern) {

    if(pattern>0){
        System.out.print("*");
        printPattern(--pattern);
    }else{
        System.out.println();
    }   
}