JAVA打印图案怎么居中啊

怎样才能像第一张图片一样居中打印啊 我的运行出来是第二张图片的样子

img

img


代码如下

import java.util.Scanner;

public class PrintTriangle {
public static void printStar(int n){

    for (int j = 1; j <= n; j++) {
        for (int i = 1; i <= j - 1; i++) {
            System.out.print("   ");
        }
        for (int i = 1; i <= 2 * n + 1 - 2 * j; i++) {
            System.out.print(" * ");
        }
        System.out.println();
    }
}
public static void main(String args[]) {



    printStar(3);
    printStar(5);
    printStar(7);
}

}

需要根据最大行的星数来判断每次空多少,比如你这个最大是7,需要每次循环先输出14-n个空格来对齐

img

    
    public class PrintTriangle  {
        public static void printStar(int n){

            for (int j = 1; j <= n; j++) {
                for (int i = 1; i <= 14-n; i++) {
                    System.out.print("   ");
                }
                for (int i = 1; i <= j - 1; i++) {
                    System.out.print("   ");
                }
                for (int i = 1; i <= 2 * n + 1 - 2 * j; i++) {
                    System.out.print(" * ");
                }
                System.out.println();
            }
        }
        public static void main(String args[]) {
            printStar(3);
            printStar(5);
            printStar(7);
        
        }
    }
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632