我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Java怎么利用for循环打印菱形

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Java怎么利用for循环打印菱形

这篇文章主要介绍了Java怎么利用for循环打印菱形,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

Java for循环打印菱形

Java代码输出菱形的方法和思路有很多,在此分享一个稍带模块化拆分思想的解决方案,将需要输出的菱形拆分成8个模块(如下图),每个模块独立实现输出。

优点:8个模块之间耦合性降低,灵活性增强。也就是说我们可以独立的控制这8个模块中任意一个模块的输出内容来灵活应对业务逻辑的变更。

Java怎么利用for循环打印菱形

按照上图标好的顺序依次实现这8个模块的代码,当1458模块输出为空格时,其中2367模块的组合,就是一个菱形。

思路分析:

        1      ######*######  第一排 模块1[6个"#"]+模块2[1个"*"]+模块3[0个"*"]+模块4[6个"#"]
        2      #####***#####
        3      ####*****####
        4      ###*******###
        5      ##*********##
        6      #***********#
    --------------------------------------------------------
        7      ##*********##  第七排 模块5[2个"#"]+模块6[5个"*"]+模块7[4个"*"]+模块8[2个"#"]
        8      ###*******###
        9      ####*****####
       10      #####***#####
       11      ######*######

代码示例:

public class Demo { public static void main(String[] args) { //为了输出效果在输出时将思路分析中的"#"替换为" "空格输出 for (int i = 1; i <= 11; i++) { if (i <= 6) { //当i <=6时打印上三角形 //模块 1 for (int j = 6; j >= i; j--) {  System.out.print(" "); } //模块 2 for (int j = 0; j < i; j++) {  System.out.print("*"); } //模块 3[同一排中模块3的"*"个数总比模块2少1个,所以这里j <i-1作为循环条件即可] for (int j = 0; j < i - 1; j++) {  System.out.print("*"); } //模块 4 for (int j = 6; j >= i; j--) {  System.out.print(" "); } //换行 System.out.println(); } else { //当i >6时打印下三角形 //模块 5 for (int j = 7; j <= i + 1; j++) {  System.out.print(" "); } //模块 6 for (int j = 11; j >= i; j--) {  System.out.print("*"); } //模块 7 for (int j = 11; j >= i + 1; j--) {  System.out.print("*"); } //模块 8 for (int j = 7; j <= i + 1; j++) {  System.out.print(" "); } //换行 System.out.println(); } } }}

运行结果:

F:\software\Java\jdk1.8.0_121\bin\java.exe "-javaagent:D:\IntelliJ IDEA 2019.1.4\lib\idea_rt.jar=50753:D:\IntelliJ IDEA 2019.1.4\bin" -Dfile.encoding=UTF-8 -classpath F:\software\Java\jdk1.8.0_121\jre\lib\charsets.jar;F:\software\Java\jdk1.8.0_121\jre\lib\deploy.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\access-bridge-64.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\cldrdata.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\dnsns.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\jaccess.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\jfxrt.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\localedata.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\nashorn.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\sunec.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\sunjce_provider.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\sunmscapi.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\sunpkcs11.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\zipfs.jar;F:\software\Java\jdk1.8.0_121\jre\lib\javaws.jar;F:\software\Java\jdk1.8.0_121\jre\lib\jce.jar;F:\software\Java\jdk1.8.0_121\jre\lib\jfr.jar;F:\software\Java\jdk1.8.0_121\jre\lib\jfxswt.jar;F:\software\Java\jdk1.8.0_121\jre\lib\jsse.jar;F:\software\Java\jdk1.8.0_121\jre\lib\management-agent.jar;F:\software\Java\jdk1.8.0_121\jre\lib\plugin.jar;F:\software\Java\jdk1.8.0_121\jre\lib\resources.jar;F:\software\Java\jdk1.8.0_121\jre\lib\rt.jar;D:\ideastudyspace\spring_study\spring-study\spring-study-aop\target\classes;E:\software\MavenRepository\org\aspectj\aspectjweaver\1.9.4\aspectjweaver-1.9.4.jar;E:\software\MavenRepository\org\springframework\spring-webmvc\5.2.0.RELEASE\spring-webmvc-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-aop\5.2.0.RELEASE\spring-aop-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-beans\5.2.0.RELEASE\spring-beans-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-context\5.2.0.RELEASE\spring-context-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-core\5.2.0.RELEASE\spring-core-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-jcl\5.2.0.RELEASE\spring-jcl-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-expression\5.2.0.RELEASE\spring-expression-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-web\5.2.0.RELEASE\spring-web-5.2.0.RELEASE.jar;E:\software\MavenRepository\com\alibaba\fastjson\1.2.47\fastjson-1.2.47.jar com.shiguang.test.Demo
      *     
     ***    
    *****   
   *******  
  ********* 
 ***********
  ********* 
   *******  
    *****   
     ***    
      *     

Process finished with exit code 0

业务变更: 打印一个空心菱形

此时只需要将1458模块输出为"*",2367模块输出为空格即可得到一个空心菱形。

Java怎么利用for循环打印菱形

代码示例:

public class Demo2 { public static void main(String[] args) { for (int i = 1; i <= 11; i++) {  if (i <= 6) {  //当i <=6时打印上三角形  //模块 1  for (int j = 6; j >= i; j--) {   System.out.print("*");  }  //模块 2  for (int j = 0; j < i; j++) {   System.out.print(" ");  }  //模块 3[同一排中模块3的"*"个数总比模块2少1个,所以这里j <i-1作为循环条件即可]  for (int j = 0; j < i - 1; j++) {   System.out.print(" ");  }  //模块 4  for (int j = 6; j >= i; j--) {   System.out.print("*");  }  //换行  System.out.println();  } else {  //当i >6时打印下三角形  //模块 5  for (int j = 7; j <= i + 1; j++) {   System.out.print("*");  }  //模块 6  for (int j = 11; j >= i; j--) {   System.out.print(" ");  }  //模块 7  for (int j = 11; j >= i + 1; j--) {   System.out.print(" ");  }  //模块 8  for (int j = 7; j <= i + 1; j++) {   System.out.print("*");  }  //换行  System.out.println();  } } }}

运行结果:

F:\software\Java\jdk1.8.0_121\bin\java.exe "-javaagent:D:\IntelliJ IDEA 2019.1.4\lib\idea_rt.jar=50681:D:\IntelliJ IDEA 2019.1.4\bin" -Dfile.encoding=UTF-8 -classpath F:\software\Java\jdk1.8.0_121\jre\lib\charsets.jar;F:\software\Java\jdk1.8.0_121\jre\lib\deploy.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\access-bridge-64.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\cldrdata.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\dnsns.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\jaccess.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\jfxrt.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\localedata.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\nashorn.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\sunec.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\sunjce_provider.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\sunmscapi.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\sunpkcs11.jar;F:\software\Java\jdk1.8.0_121\jre\lib\ext\zipfs.jar;F:\software\Java\jdk1.8.0_121\jre\lib\javaws.jar;F:\software\Java\jdk1.8.0_121\jre\lib\jce.jar;F:\software\Java\jdk1.8.0_121\jre\lib\jfr.jar;F:\software\Java\jdk1.8.0_121\jre\lib\jfxswt.jar;F:\software\Java\jdk1.8.0_121\jre\lib\jsse.jar;F:\software\Java\jdk1.8.0_121\jre\lib\management-agent.jar;F:\software\Java\jdk1.8.0_121\jre\lib\plugin.jar;F:\software\Java\jdk1.8.0_121\jre\lib\resources.jar;F:\software\Java\jdk1.8.0_121\jre\lib\rt.jar;D:\ideastudyspace\spring_study\spring-study\spring-study-aop\target\classes;E:\software\MavenRepository\org\aspectj\aspectjweaver\1.9.4\aspectjweaver-1.9.4.jar;E:\software\MavenRepository\org\springframework\spring-webmvc\5.2.0.RELEASE\spring-webmvc-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-aop\5.2.0.RELEASE\spring-aop-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-beans\5.2.0.RELEASE\spring-beans-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-context\5.2.0.RELEASE\spring-context-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-core\5.2.0.RELEASE\spring-core-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-jcl\5.2.0.RELEASE\spring-jcl-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-expression\5.2.0.RELEASE\spring-expression-5.2.0.RELEASE.jar;E:\software\MavenRepository\org\springframework\spring-web\5.2.0.RELEASE\spring-web-5.2.0.RELEASE.jar;E:\software\MavenRepository\com\alibaba\fastjson\1.2.47\fastjson-1.2.47.jar com.shiguang.test.Demo
****** ******
*****   *****
****     ****
***       ***
**         **
*           *
**         **
***       ***
****     ****
*****   *****
****** ******

Process finished with exit code 0

感谢你能够认真阅读完这篇文章,希望小编分享的“Java怎么利用for循环打印菱形”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Java怎么利用for循环打印菱形

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java怎么利用for循环打印菱形

这篇文章主要介绍了Java怎么利用for循环打印菱形,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Java for循环打印菱形Java代码输出菱形的方法和思路有很多,在此分享
2023-06-14

JAVA中怎么用for循环打印空心菱形

这篇“JAVA中怎么用for循环打印空心菱形”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“JAVA中怎么用for循环打印空心
2023-06-29

如何使用 Java 打印出菱形?(怎么用java打印菱形)

在Java编程中,打印菱形是一个常见的练习,它可以帮助我们更好地理解循环和条件语句的使用。以下是使用Java打印菱形的步骤:一、分析菱形的结构菱形由上半部分和下半部分组成,上半部分是一个递增的三角形,下半部分是一个递减的
如何使用 Java 打印出菱形?(怎么用java打印菱形)
Java2024-12-15

如何利用 Java 实现打印菱形星号图案?(怎么使用java打印菱形星号图案)

在Java编程中,打印菱形星号图案是一个常见的练习,它可以帮助我们更好地理解循环和条件语句的使用。以下是实现这一目标的详细步骤:一、分析菱形星号图案的结构菱形星号图案由上半部分和下半部分组成,上半部分是一个等腰三角形,下半部
如何利用 Java 实现打印菱形星号图案?(怎么使用java打印菱形星号图案)

怎么使用JavaScript打印菱形

这篇文章主要讲解了“怎么使用JavaScript打印菱形”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用JavaScript打印菱形”吧!首先,我们需要了解什么是菱形。菱形又称网格状多
2023-07-06

C语言怎么循环打印星号图形

这篇文章主要介绍“C语言怎么循环打印星号图形”,在日常操作中,相信很多人在C语言怎么循环打印星号图形问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言怎么循环打印星号图形”的疑惑有所帮助!接下来,请跟着小编
2023-07-04

怎么利用For循环遍历Python字典

这篇文章主要讲解了“怎么利用For循环遍历Python字典”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么利用For循环遍历Python字典”吧!前言在实战前,我们需要先创建一个模拟数据的
2023-06-29

使用Java怎么打印三角形

这篇文章将为大家详细讲解有关使用Java怎么打印三角形,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。java基本数据类型有哪些Java的基本数据类型分为:1、整数类型,用来表示整数的数据类型
2023-06-14

C语言怎么实现循环打印星号图形再镂空

这篇“C语言怎么实现循环打印星号图形再镂空”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言怎么实现循环打印星号图形再镂空
2023-07-04

怎么在Linux中利用shell 实现for循环

本篇文章为大家展示了怎么在Linux中利用shell 实现for循环,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。C语言风格for ((i=1; i<=100; i++))do echo $ido
2023-06-09

如何用 Java 实现打印三角形?(打印三角形java怎么实现)

在Java编程中,打印三角形是一个常见的练习和问题。下面将详细介绍如何用Java实现打印三角形的方法。一、基本思路要打印三角形,我们可以使用循环结构来控制输出的行数和每行的字符。通常,三角形的形状可以是直角三角形、等腰三
如何用 Java 实现打印三角形?(打印三角形java怎么实现)
Java2024-12-19

利用Python循环(包括while&for)各种打印九九乘法表的实例

一.for循环打印九九乘法表 #注意:由于缩进在浏览器不好控制,请大家见谅,后续会有图片传入。 1.1 左下角for i in range(1,10): for j in range(1,i+1):print('%d*%d=%2dt'%(j
2022-06-04

php怎么利用for循环求数组的和

实现步骤:1、用“array_values(原数组)”将原数组转为索引数组;2、用“count(索引数组)”求索引数组的长度;3、用“$sum=0;”定义一个变量用于存储求和结果;4、用for语句循环遍历数组,语法“for($i=0;$i<数组长度;$i++){循环体}”;5、在循环体中,用“+=”将数组元素一个个相加求总和即可,语法“$sum+=$索引数组变量名[$i];”。本教程操作环境:win
2022-07-01

java怎么用for循环给数组赋值

要使用for循环给数组赋值,可以按照以下步骤进行:1. 声明一个数组,并指定数组的长度。2. 使用for循环,从0开始遍历数组的索引。3. 在循环中,使用索引将值赋给数组的对应位置。以下是一个示例代码,通过for循环给数组赋值:```jav
2023-08-15

怎么在Python中利用for循环初始化数组

这篇文章给大家介绍怎么在Python中利用for循环初始化数组,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其最初的设计
2023-06-14

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录