金字塔怎么写?

java金字塔怎么打印出来?打印在控制台?哪位大侠告诉,要代码!!!!!!谢谢!!!!!!!

[code="java"]package io;

import java.util.Arrays;

/**

  • 打印一个字符组成的金字塔

    */

    public class Pyramid {

    // 程序入口

    public static void main(String[] args) {

    printPyramid(21, '*');

    }

    /**

    • 打印一座金字塔。
    • @param bottom_width 底层宽度。必须是奇数。
    • @param ch 组成金字塔的字符

      */

      private static void printPyramid(int bottom_width, char ch) {

      if (bottom_width < 1 || bottom_width % 2 == 0) {

      throw new IllegalArgumentException();

      }

      int height = bottom_width / 2 + 1; // 金字塔的高度

      for (int i = 0; i < height; i++) {

      int width = i * 2 + 1; // 本层的宽度

      System.out.println(getLevel(bottom_width, width, ch));

      }

      }

    /**

    • 生成金字塔的一行
    • @param bottom_width 金字塔宽度
    • @param width 本层的宽度
    • @param ch 要打印的字符
      • @return 金字塔的一行
        */
        private static String getLevel(int bottom_width, int width, char ch) {
        int space_width = (bottom_width - width) / 2; // 前面空格的宽度
        return expand(' ', space_width) + expand(ch, width);
        }

    /**

    • 生成包含若干个字符的字符串。
    • @param c 生成字符串的字符
      • @param width 字符串的长度
    • @return 生成的字符串
      */
      private static String expand(char c, int width) {
      char[] chars = new char[width];
      Arrays.fill(chars, c);
      return new String(chars);
      }
      }[/code]

你试试,是这样的需求不?

[code="java"]呵呵,客气[/code]

[code="java"]503229799加吧,QQ聊[/code]