java入门:如何创建一个空心金字塔,菱形

觉得有帮助的小伙伴帮我点一个免费的赞和好评谢谢啦!

这道题最主要的还是要先简后难

先把最简单的搞定然后再开始慢慢变化

public class newmfExercise {
    public static void main(String[] args) {
        int totalLevel = 5; //层数
        for (int i = 1; i <= totalLevel; i++) { //i 表示层数

            //在输出*之前,还有输出 对应空格 = 总层数-当前层
            for (int k = 1; k <= totalLevel - i; k++) {
                System.out.print(" ");
            }

            //控制打印每层的*个数
            for (int j = 1; j <= 2 * i - 1; j++) {
                //当前行的第一个位置是*,最后一个位置也是*, 最后一层全部 *
                if (j == 1 || j == 2 * i - 1 ) {
                    System.out.print("*");
                } else { //其他情况输出空格
                    System.out.print(" ");
                }
            }
            //每打印完一层的*后,就换行 println本身会换行
            System.out.println("");
        }


        int totalLevel1 = totalLevel-1; //层数
        for (int a = totalLevel1; a >=1; a--) { //a 表示层数

            //在输出*之前,还有输出 对应空格 = 总层数-当前层
            for (int b = 1; b <= totalLevel - a; b++) {
                System.out.print(" ");
            }

            //控制打印每层的*个数
            for (int c = 1; c <= 2 * a - 1; c++) {
                //当前行的第一个位置是*,最后一个位置也是*, 最后一层全部 *
                if (c == 1 || c == 2 * a - 1 ) {
                    System.out.print("*");
                } else { //其他情况输出空格
                    System.out.print(" ");
                }
            }
            //每打印完一层的*后,就换行 println本身会换行
            System.out.println("");
        }
    }
}

你可能感兴趣的:(java,蓝桥杯,开发语言)