当前位置:首页 > Java

如何用java输出菱形

2026-03-04 08:58:01Java

使用Java输出菱形

方法一:嵌套循环实现

通过嵌套循环控制行数和每行的空格与星号数量,可以输出一个菱形图案。

public class DiamondPattern {
    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();
        }
    }
}

方法二:动态调整菱形大小

通过用户输入动态调整菱形的大小,增加灵活性。

import java.util.Scanner;

public class DynamicDiamond {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入菱形的大小: ");
        int size = scanner.nextInt();
        // 上半部分
        for (int i = 1; i <= size; i++) {
            for (int j = 1; j <= size - i; j++) {
                System.out.print(" ");
            }
            for (int k = 1; k <= 2 * i - 1; k++) {
                System.out.print("*");
            }
            System.out.println();
        }
        // 下半部分
        for (int i = size - 1; i >= 1; i--) {
            for (int j = 1; j <= size - i; j++) {
                System.out.print(" ");
            }
            for (int k = 1; k <= 2 * i - 1; k++) {
                System.out.print("*");
            }
            System.out.println();
        }
        scanner.close();
    }
}

方法三:使用递归实现

递归方法可以更简洁地实现菱形输出,但逻辑稍复杂。

public class RecursiveDiamond {
    public static void printDiamond(int n, int current) {
        if (current > n) return;
        // 打印空格
        for (int i = 0; i < n - current; i++) {
            System.out.print(" ");
        }
        // 打印星号
        for (int i = 0; i < 2 * current - 1; i++) {
            System.out.print("*");
        }
        System.out.println();
        printDiamond(n, current + 1);
        // 下半部分
        if (current < n) {
            for (int i = 0; i < n - current; i++) {
                System.out.print(" ");
            }
            for (int i = 0; i < 2 * current - 1; i++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }

    public static void main(String[] args) {
        int n = 5;
        printDiamond(n, 1);
    }
}

方法四:优化输出格式

通过调整输出格式,使菱形更加美观。

如何用java输出菱形

public class PrettyDiamond {
    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();
        }
    }
}

以上方法提供了多种实现菱形输出的方式,可以根据需求选择合适的方法。

标签: 菱形如何用
分享给朋友:

相关文章

如何用vs code开发react

如何用vs code开发react

安装必要工具 确保系统已安装Node.js(建议LTS版本),用于运行JavaScript和npm/yarn包管理工具。下载并安装Visual Studio Code(VS Code)作为代码编辑器。…

react中如何用回车事件

react中如何用回车事件

在React中处理回车事件 在React中,可以通过监听键盘事件来捕获回车键(Enter key)的按下动作。以下是几种常见场景的实现方法: 监听输入框的回车事件 在输入框中按下回车时触发特…

react项目如何用js改样式

react项目如何用js改样式

使用内联样式 在React中,可以直接通过JavaScript对象定义样式,并将其传递给元素的style属性。样式属性需要使用驼峰命名法(如backgroundColor而非background-co…

react如何用ts写高阶组件

react如何用ts写高阶组件

使用 TypeScript 编写 React 高阶组件(HOC) 基本高阶组件结构 高阶组件(HOC)是一个函数,接收一个组件并返回一个新的组件。以下是 TypeScript 的基本实现方式: im…

如何用java

如何用java

使用Java进行开发 Java是一种广泛使用的编程语言,适用于多种应用场景,包括Web开发、移动应用开发、企业级应用等。以下是Java开发的基本步骤和常见应用场景。 安装Java开发环境 下载并安装…

如何用java做游戏

如何用java做游戏

使用Java开发游戏的基本步骤 选择游戏开发框架或库 Java游戏开发通常依赖成熟的框架或库,如LibGDX、jMonkeyEngine或LWJGL。LibGDX适合2D/3D跨平台游戏,jMonke…