java如何编写菱形
编写菱形的方法
使用Java编写菱形可以通过嵌套循环实现,关键在于控制空格和星号的输出。以下是两种常见的方法:

方法一:完整菱形
通过上下对称的循环结构打印菱形,分为上半部分和下半部分。

public class Diamond {
public static void main(String[] args) {
int n = 5; // 菱形大小(行数的一半)
// 上半部分
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n - i; j++) {
System.out.print(" ");
}
for (int k = 1; k <= 2 * i - 1; k++) {
System.out.print("*");
}
System.out.println();
}
// 下半部分
for (int i = n - 1; i >= 1; i--) {
for (int j = 1; j <= n - i; j++) {
System.out.print(" ");
}
for (int k = 1; k <= 2 * i - 1; k++) {
System.out.print("*");
}
System.out.println();
}
}
}
方法二:空心菱形
仅打印菱形边框,内部留空。通过条件判断控制星号输出位置。
public class HollowDiamond {
public static void main(String[] args) {
int n = 5;
// 上半部分
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n - i; j++) {
System.out.print(" ");
}
for (int k = 1; k <= 2 * i - 1; k++) {
if (k == 1 || k == 2 * i - 1) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
System.out.println();
}
// 下半部分
for (int i = n - 1; i >= 1; i--) {
for (int j = 1; j <= n - i; j++) {
System.out.print(" ");
}
for (int k = 1; k <= 2 * i - 1; k++) {
if (k == 1 || k == 2 * i - 1) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
System.out.println();
}
}
}
关键点说明
- 变量
n控制菱形大小,表示上半部分的行数。 - 外层循环控制行数,内层循环控制每行的空格和星号。
- 空心菱形通过条件判断仅在第一列和最后一列打印星号。
- 下半部分采用倒序循环实现对称结构。
运行以上代码将分别输出实心和空心的菱形图案,通过调整n的值可以改变菱形大小。






