首页 > 编程语言 >使用Java通过键盘输入获取菱形图案

使用Java通过键盘输入获取菱形图案

时间:2024-04-04 11:04:39浏览次数:20  
标签:Java Scanner 用户 键盘输入 菱形 行数 输入

简介:

在这篇文章中,我们将学习如何使用Java编程语言通过键盘输入获取用户指定的行数,然后输出菱形图案。菱形图案是一种经典的图形,通过控制空格和星号的数量可以打印出美观的图案。

步骤:
  1. 引入Scanner类
    在Java中,我们可以使用Scanner类来接收用户的键盘输入。首先需要引入java.util.Scanner包。

  2. 获取用户输入

    • 使用Scanner类获取用户输入的行数,这个行数将决定菱形的大小。
  3. 打印上半部分菱形

    • 使用循环结构打印菱形的上半部分,控制空格和星号的数量来形成菱形的形状。
  4. 打印下半部分菱形

    • 同样使用循环结构打印菱形的下半部分,保持对称性。
  5. 完整代码示例
    提供完整的Java代码示例,包括引入Scanner类、获取用户输入、打印菱形的上半部分和下半部分。

结尾:

通过本文,读者将学会如何在Java中利用键盘输入获取用户指定的行数,并输出漂亮的菱形图案。这个实例展示了如何使用循环和控制结构来创建有趣的图形。

示例代码:
import java.util.Scanner;

public class Demo {
    public static void main(String[] args) {
        // 创建一个Scanner对象用于接收用户输入
        Scanner sc = new Scanner(System.in);
        
        // 提示用户输入行数
        System.out.print("请输入你想输出的行数:");
        
        // 读取用户输入的行数
        int hang = sc.nextInt();
        
        // 输出上半部分的菱形
        for (int i = 1; i <= hang; i++) {
            // 输出空格
            for (int j = 1; j <= hang - i; j++) {
                System.out.print(" ");
            }
            // 输出星号
            for (int k = 1; k <= 2 * i - 1; k++) {
                System.out.print("*");
            }
            System.out.println();
        }

        // 输出下半部分的菱形
        for (int a = hang - 1; a >= 1; a--) {
            // 输出空格
            for (int b = hang - a; b > 0; b--) {
                System.out.print(" ");
            }
            // 输出星号
            for (int c = 1; c <= 2 * a - 1; c++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
效果图:
  • 输入行数为5时的菱形图案
    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *
  • 输入行数为3时的菱形图案
  *
 ***
*****
 ***
  *
结语:

通过这篇文章,读者将了解如何在Java中利用键盘输入创建漂亮的菱形图案。这个简单而有趣的示例展示了Java编程的基础知识和控制结构的应用。希望这篇文章对您有所帮助!

标签:Java,Scanner,用户,键盘输入,菱形,行数,输入
From: https://blog.csdn.net/binaxia0923/article/details/137369145

相关文章

  • Java面试题:Java集合框架:请简述Java集合框架的主要组成部分,并解释它们之间的关系。
    Java集合框架(JavaCollectionsFramework)是一组用来表示和操作集合的类的集合,它提供了用于存储不同类型对象的标准化接口和类。Java集合框架的主要组成部分包括以下几个部分:集合接口(CollectionInterface):这是所有集合类的根接口,定义了集合的基本操作,如添加、删除、判断存在......
  • Java面试题:解释Java泛型的主要用途,并说明泛型擦除的概念。
    Java泛型(Generics)的主要用途是提供一种编写可重用且类型安全的代码的方法。它们允许在编程时使用类型参数,这些类型参数可以在运行时被具体的类或接口替换。泛型的主要优点包括:类型安全:泛型编译时会进行类型检查,确保在运行时使用的是正确的类型,从而减少类型转换错误。代码复......
  • Java面试题:简述数据库性能优化的常见手段,如索引优化、SQL语句优化等。
    数据库性能优化是确保数据库系统高效运行的关键步骤。以下是一些常见的数据库性能优化手段:1.索引优化:创建索引:为经常用于查询条件的字段创建索引,可以大大加快查询速度。避免过多索引:虽然索引可以加快查询,但过多索引会减慢写操作,并占用额外空间。使用复合索引:当查询条件包......
  • Java面试题:解释微服务架构的概念及其优缺点,讨论微服务拆分的原则。
    微服务架构的概念:微服务架构是一种设计方法,它将应用程序分解成一组独立的、可协作的服务,每个服务对应一个具体的业务功能。这些服务可以独立部署、扩展和维护,通常通过轻量级的通信机制(如HTTPRESTfulAPI)相互协作。微服务架构使得服务变得更加模块化,各服务之间相互独立,不受......
  • Java后端对 前端的学习了解 ,基础知识和各框架功能发展概述,以及了解前后端的分离史
    前端的框架太多,杂乱,后端只需要掌握简单的即可 (基础的和vue框架后面详细有笔记)一.前端三要素1.HTML(结构):超文本标记语言,决定网页的结构和内容(最基础)2.CSS(表现) :层叠样式表,设定页面的修饰,相当于化妆品3.JavaScript(行为):是一种弱类型的脚本语言,源代......
  • Golang vs Java: 一场编程语言的较量
    在IT行业飞速发展的过程中,编程语言扮演着至关重要的角色。作为开发人员,选择合适的编程语言对于构建高效、可靠和可维护的应用程序至关重要。在这场编程语言的较量中,Golang和Java无疑是两个备受青睐的选择。我们现在将对这两种语言进行全面对比,探讨它们在性能、简洁性、并发......
  • 如何查看java代码编写的soap请求报文头信息
    在浏览器中打开接口地址,点击浏览器中的插件查看接口点击具体方法之后可以看到请求报文头工具如下: ......
  • 安全访问多线程环境:掌握 Java 并发集合的使用技巧
    哈喽,各位小伙伴们,你们好呀,我是喵手。  今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。  我是一名后端开发爱好者,工作日常接触到最多的就是Java语言啦,所以我都尽量抽业余时间把......
  • Java零基础入门-java8新特性(上篇)
    一、本期教学目标java8有哪些新特性什么是函数式接口什么是Lambda表达式掌握Stream ApiStream和Collect集合区别Stream创建方式Stream操作三步骤二、概述        上几期,我们是完整的学完了java异常类的学习及实战演示、以及学习了线程进程等基础概念,而这一期,我们要......
  • Java零基础入门-java8新特性(下篇)
    一、概述     ​上几期,我们是完整的学完了java异常类的学习及实战演示、以及学习了线程进程等基础概念,而这一期,我们要来玩点好的东西,那就是java8,我们都知道java8是自2004年发布java5之后最重要且一次重大的版本更新,虽然我们的JDK环境也升级到了java1.8,但是在日常的开......