Java 实例 – 打印菱形

输出指定行数的菱形。

实例

  1. public class Diamond {
  2. public static void main(String[] args) {
  3. print(8); // 输出 8 行的菱形
  4. }
  5. public static void print(int size) {
  6. if (size % 2 == 0) {
  7. size++; // 计算菱形大小
  8. }
  9. for (int i = 0; i < size / 2 + 1; i++) {
  10. for (int j = size / 2 + 1; j > i + 1; j--) {
  11. System.out.print(" "); // 输出左上角位置的空白
  12. }
  13. for (int j = 0; j < 2 * i + 1; j++) {
  14. System.out.print("*"); // 输出菱形上半部边缘
  15. }
  16. System.out.println(); // 换行
  17. }
  18. for (int i = size / 2 + 1; i < size; i++) {
  19. for (int j = 0; j < i - size / 2; j++) {
  20. System.out.print(" "); // 输出菱形左下角空白
  21. }
  22. for (int j = 0; j < 2 * size - 1 - 2 * i; j++) {
  23. System.out.print("*"); // 输出菱形下半部边缘
  24. }
  25. System.out.println(); // 换行
  26. }
  27. }
  28. }

输出结果:

  1. *
  2. ***
  3. *****
  4. *******
  5. *********
  6. *******
  7. *****
  8. ***
  9. *