通过调用方法打印右对齐三角形

时间:2016-10-24 10:29:48

标签: java loops methods

美好的一天! Java编程中的新手。想要了解循环的一些帮助。该计划的目标是打印一个右对齐的三角形。我已经创建了打印方法" *"另一个用于" " (空格)。我无法理解如何在main方法中实现空格。谢谢!

预期产出:

"printTriangle(4);"

     *
    **
   ***
  ****

这是我的代码:

public class PrintingLikeBoss {

public static void printStars(int amount) {
    int i = 1;

    while (i <= amount) {
        System.out.print("*");
        i++;
    }
    System.out.println("");
}

public static void printWhitespaces(int amount) {
    int i = 1;

    while (i <= amount) {
        System.out.print(" ");
        i++;
   }
    System.out.println("");
}

public static void printTriangle(int size) {

    int i = 1;
    int j = 1;
    while (i >= 0) {
        printStars(size);
        i++;
        }
    }


    printTriangle(4);
    }
}

1 个答案:

答案 0 :(得分:1)

由于printTriangle()总是大于0,i方法永远不会结束。

此外,您的代码中没有主要方法,因此您将无法运行它。

现在回答你的问题:

   public static void printTriangle(int size){
        int i = size;
        int j = 1;
        while(j<=i){
            printWhite(i-j);
            printStar(j);
            j++;
            System.out.println("");
        }
    }

    public static void printWhite(int size){
        int i = size;
        for(int j = 0; j<i; j++){
            System.out.print(" ");
        }
    }

    public static void printStar(int size){
        int i = size;
        for(int j = 0; j<i; j++){
            System.out.print("*");
        }

    }

    public static void main(String[] args){
    printTriangle(4);
    }

这应该为您提供如下输出:

     *
    **
   ***
  ****
相关问题