创建圣诞树-java

pn9klfpd  于 2021-06-27  发布在  Java
关注(0)|答案(3)|浏览(307)
public static void printStars(int num){
    for (int x = 0; x< num; x++){
        System.out.print("*");
    }
    System.out.println("");
}
public static void printSpaces(int spaces){
    for (int y = 1; y<= spaces ; y++){
        System.out.print("0");
    }
}
public static void leftLeaningTriangle(int num){
    for (int m = 1; m<=num; m++){
        printStars(m);
    }
}
public static void rightLeaningTriangle (int tri){
    for (int n =1; n<=tri;n++){
        printSpaces(tri-n);
        printStars(n);
    }
}
public static void christmasTree(int height){
    for (int i = 1; i<=height; i++){
        int z = height-i;
        printSpaces(z);
        height++;
        printStars(i++);
    }

嗨,有人能帮我理解为什么圣诞树图案的顶部会有一颗星而不是上面代码的两颗星吗?使用printstars(i++)不是printstars(2)吗?我有一个主要的方法,只是这里没有显示。

gz5pxeao

gz5pxeao1#

i++ 使用后增量运算符,该运算符首先返回变量的原始值,然后将其增量为1。

wj8zmpe1

wj8zmpe12#

尝试
++i i++ 取i的值,然后用 ++i 我将增加1,然后它很好地被传递函数

vom3gejh

vom3gejh3#

为了 printStars(i++) ,初始值,而不是 i 传递给函数。 i 只在函数运行后增加:您的代码相当于

printStars(i);
i = i + 1;

相关问题