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