当前位置: 首页 > news >正文

Java基础 - 练习(二)打印菱形

Java基础练习

打印菱形,先上代码:

// 方法一:基础,好理解
public static void diamond() {//控制行数for (int i = 1; i <= 4; i++) {//空格的个数for (int k = 1; k <= 4 - i; k++) {System.out.print(" ");}//控制星星个数的时候和行有关for (int j = 1; j <= 2 * i - 1; j++) {System.out.print("*");}System.out.println();}//控制行数for (int i = 3; i >= 1; i--) {//空格的个数for (int k = 1; k <= 4 - i; k++) {System.out.print(" ");}//控制星星个数的时候和行有关for (int j = 1; j <= 2 * i - 1; j++) {System.out.print("*");}System.out.println();}
}

思路:

  1. 打印菱形可以将菱形看作两个等腰三角形,第一个正着放,第二个倒着放,两个等腰三角形共用同一条底边
  2. 先打印第一个正着放的等腰三角形,设置4行,使用for循环嵌套
  3. 再打印倒着放的等腰三角形,因为底边共用,所以此处打印时比正放的时候少一行,打印3行
效果图

在这里插入图片描述

------------------------------------------------分割线------------------------------------------------

// 方法二:简便
public static void diamond_1() {for (int i = -4; i < 4; i++) {for (int j = 0; j <= Math.abs(i); j++) {System.out.print(" ");}for (int j = 1; j <= 8 - (Math.abs(i) * 2 + 1); j++) {System.out.print("*");}System.out.println();}
}

此处使用了Math.abs(i)方法,用于取当前数i的绝对值

http://www.lryc.cn/news/375904.html

相关文章:

  • 链表OJ--超详细解析
  • JavaFX 分隔符
  • mysql安装配置教程(Linux+Windows)
  • MySQL数据库与基本操作(增删改查)
  • 【学习总结】SpringBoot中使用单例模式+ScheduledExecutorService实现异步多线程任务(若依源码学习)
  • shell脚本编程(概念、编程和语句)
  • 设置角色运动的动画
  • OKR:2024年目标和关键成果常见问题
  • 轻量级 ioc/aop 框架 loveqq 1.0 发布,完全替换掉若依底层 spring 及其 starter
  • 【递归、搜索与回溯】DFS解决FloodFill算法
  • 【Spine学习12】之 事件帧
  • 【C语言习题】31.冒泡排序
  • 【Spring Cloud应用框架】
  • Repetition Improves Language Model Embeddings论文阅读笔记
  • 工具清单 - Bug追踪管理
  • 企业内网是如何禁用U盘的?电脑禁用U盘有哪些方法?
  • 怎样打印微信文档文件?
  • 【讲解下Pip换源】
  • 分享:2024年(第12届)“泰迪杯”数据挖掘挑战赛省级奖项获奖名单公示
  • 后端开发中缓存的作用以及基于Spring框架演示实现缓存
  • Redis原理篇——分布式锁
  • css3多列布局
  • Java开发的构建神器:Maven以及如何安装部署Maven
  • echarts学习:使用dataset管理数据
  • MyBatis逆向工程和MyBatisX插件的使用
  • 探索C嘎嘎的奇妙世界:第十四关---STL(string的模拟实现)
  • 【JavaScript脚本宇宙】玩转图像处理:从基础到高级,这些库你不能错过!
  • python+unity手势控制地球大小
  • CSS【实战】抽屉动画
  • 【Linux Vim的保姆级教程】