java编程中怎么打印菱形

时间:2025-01-25 20:27:46 网络游戏

在Java编程中,可以使用嵌套循环来打印菱形。以下是几种不同的方法:

方法一:使用嵌套循环打印菱形

```java

public class Diamond {

public static void main(String[] args) {

int n = 5; // 菱形的大小,可以根据需要修改

// 上半部分

for (int i = 0; i < n / 2; i++) {

// 打印空格

for (int j = 0; j < n - i - 1; j++) {

System.out.print(" ");

}

// 打印星号

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

System.out.print("* ");

}

System.out.println();

}

// 下半部分

for (int i = n / 2; i > 0; i--) {

// 打印空格

for (int j = 0; j < n - i; j++) {

System.out.print(" ");

}

// 打印星号

for (int j = 0; j < 2 * i - 1; j++) {

System.out.print("* ");

}

System.out.println();

}

}

}

```

方法二:使用数学公式计算菱形的行数

```java

public class Diamond {

public static void main(String[] args) {

int size = 10; // 菱形的对角线长度

size = (size / 2) * 2; // 菱形对角线两侧的宽度是相同的,所以对角线长度size必定是偶数

int center = size / 2;

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

for (int j = 0; j <= size; j++) {

if (Math.abs(i - center) + Math.abs(j - center) == center) {

System.out.print("* ");

} else {

System.out.print(" ");

}

}

System.out.println();

}

}

}

```

方法三:使用两个嵌套的for循环打印菱形

```java

public class Diamond {

public static void main(String[] args) {

int n = 5; // 菱形的行数

for (int i = 1; i <= n; i++) {

// 打印上半部分菱形

for (int j = n; j > i; j--) {

System.out.print(" ");

}

for (int k = 1; k <= 2 * i - 1; k++) {

System.out.print("* ");

}

System.out.println();

// 打印下半部分菱形

for (int j = n; j > i; j--) {

System.out.print(" ");

}

for (int k = 1; k <= 2 * (n - i) - 1; k++) {

System.out.print("* ");

}

System.out.println();

}

}

}

```

方法四:使用if语句判断行数打印菱形

```java

public class Diamond {

public static void main(String[] args) {

int size = 8; // 菱形的行数

if (size % 2 == 0) {

size++; // 计算菱形大小

}

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

for (int j = size / 2 + 1; j > i + 1; j--) {

System.out.print(" ");

}

for (int j = 0; j < size / 2 - i; j++) {

System.out.print("* ");

}

System.out.println();

}

}

}

```

以上方法都可以用来打印菱形,你可以根据自己的需求和喜好选择合适的方法。