Java 实例 – 打印菱形
输出指定行数的菱形。
实例
public class Diamond { public static void main(String[] args) { print(8); // 输出 8 行的菱形 } public static void print(int size) { if (size % 2 == 0) { size++; // 计算菱形大小 } for (int i = 0; i < size / 2 + 1; i++) { for (int j = size / 2 + 1; j > i + 1; j--) { System.out.print(" "); // 输出左上角位置的空白 } for (int j = 0; j < 2 * i + 1; j++) { System.out.print("*"); // 输出菱形上半部边缘 } System.out.println(); // 换行 } for (int i = size / 2 + 1; i < size; i++) { for (int j = 0; j < i - size / 2; j++) { System.out.print(" "); // 输出菱形左下角空白 } for (int j = 0; j < 2 * size - 1 - 2 * i; j++) { System.out.print("*"); // 输出菱形下半部边缘 } System.out.println(); // 换行 } } }
输出结果:
* *** ***** ******* ********* ******* ***** *** *
头条号[IT荠荠菜]
qux***ong@qq.com
1、另一种实现思路:利用菱形的对称,编写代码,如下所示:
2、代码抽取:抽取重复的代码片段到方法 printLint(...) 中,如下所示:
头条号[IT荠荠菜]
qux***ong@qq.com