当前位置:首页 > 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);
    }
}

方法四:优化输出格式

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

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();
        }
    }
}

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

如何用java输出菱形

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

相关文章

如何用vue实现前端

如何用vue实现前端

Vue.js 前端开发实现方法 环境搭建与项目初始化 安装 Node.js 和 npm/yarn 作为基础环境 使用 Vue CLI 创建项目:vue create project-name 选择预设…

如何用vs code开发react

如何用vs code开发react

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

如何用react构建用户界面

如何用react构建用户界面

安装 React 环境 使用 Create React App 快速搭建项目环境,运行以下命令: npx create-react-app my-app cd my-app npm start…

如何用react写页面跳转

如何用react写页面跳转

使用React Router进行页面跳转 React Router是React生态中最常用的路由管理库,适用于单页面应用(SPA)的导航和页面跳转。以下是具体实现方法: 安装React Route…

如何用ts重构react项目

如何用ts重构react项目

使用 TypeScript 重构 React 项目的步骤 安装 TypeScript 及相关依赖 在项目中安装 TypeScript 和 React 的类型定义文件: npm install -…

React如何用canvas画出人脸

React如何用canvas画出人脸

使用React和Canvas绘制人脸 在React中使用Canvas绘制人脸可以通过以下方法实现。这里以绘制一个简化的人脸为例,涵盖基本的脸部轮廓、眼睛、鼻子和嘴巴。 创建Canvas组件 创建一个…