Java 圣诞树树干前的间距

Java 圣诞树树干前的间距,java,for-loop,Java,For Loop,我有一个练习,我必须打印一棵圣诞树 public class ChristmasTree { public static void main(String[] args) { int size = 6; printChristmasTree(size); } public static void printChristmasTree(int size) { for (int i = 0; i

我有一个练习,我必须打印一棵圣诞树

    public class ChristmasTree {
        public static void main(String[] args) {
            int size = 6;
            printChristmasTree(size);
    }



 public static void printChristmasTree(int size) {
        for (int i = 0; i < size; i++) {
            for (int j = 0; j < size - i; j++) {
                System.out.print(" ");
            }
            for (int j = 0; j < (2 * i + 1); j++) {
                System.out.print("*");
            }
            System.out.println();
        }
        for (int k = 0; k < 1; k++) {
            System.out.print("**");
            System.out.println();
        }
        System.out.println();
    }

}
我怎样才能修好它?如何更改此循环以将树干移动到树的中心?

更改

     for (int k = 0; k < 1; k++) {
        System.out.print("**");
        System.out.println();
     }


您需要循环查找大小中的空格数,并相应地放置它。如果循环变量k关闭了一点,则调整它。

您说的是christmass tree,所以我猜您希望树干位于不同的行中。如果这是你想要的,这里有代码:

for (int k = 0; k < 2; k++) {
    for (int l = 0; l <= size; l++) {
        if (l != size)
            System.out.print(" ");
        else
            System.out.println("*");
    }
    System.out.println();
}
如果您想在同一行中,您可以:

    for (int l = 0; l <= size; l++) {
        if (l != size)
            System.out.print(" ");
        else
            System.out.print("**");
    }
    System.out.println();

添加一些空格…?我不能。我被告知在行System.out.println之前创建打印空间的循环;需要删除,System.out.println*不应包含ln,否则它们将放在不同的行上。在所有情况下,这也会在*之间打印一个空格。虽然除了那些应该可以使用的以外,这并没有太大帮助,trunk只是向右移动了两个空格,它不在中心对不起,我误解了大小,请再试一次。我把它改成了k++
for (int k = 0; k < 2; k++) {
    for (int l = 0; l <= size; l++) {
        if (l != size)
            System.out.print(" ");
        else
            System.out.println("*");
    }
    System.out.println();
}
    for (int l = 0; l <= size; l++) {
        if (l != size)
            System.out.print(" ");
        else
            System.out.print("**");
    }
    System.out.println();