Java基础知识强化07:打印出空心菱形
1.如图打印出空心菱形:

2.下面是逻辑实现代码:
 package himi.hebao04;
 import java.util.Scanner;
 public class TestDemo08 {
     public static void main(String[] args) {
         int length = 1;// 存储菱形的边长的变量
         Scanner sc = new Scanner(System.in);// 输入数据的扫描对象
         System.out.println("请输入菱形的边长:");
         length = sc.nextInt();// 获取输入的边长数值
         /* 打印菱形的上半部分三角形 行数为length行 */
         for (int i = 1; i <= length; i++) {// 需要打印的行数
             for (int j = 1; j <= length - i; j++) {// 打印左边空白的区域,随行递减1
                 System.out.print(" ");
             }
             for (int k = 1; k <= 2 * i - 1; k++) {// 打三角形的区域
                 if (k == 1 || k == 2 * i - 1) {// 空心的获取 除每行第一个以及最后一个 外其余为空白 ,起始位置不再是1行1列,因为前面空格打印占位了
                     System.out.print("*");
                 } else {
                     System.out.print(" ");
                 }
             }
             System.out.println();
         }
         /* 打印菱形的下半部分三角形 中间行公用 故行数为length-1 */
         for (int i = length - 1; i > 0; i--) {
             for (int j = 1; j <= length - i; j++) {
                 System.out.print(" ");
             }
             for (int k = 1; k <= 2 * i - 1; k++) {
                 if (k == 1 || k == 2 * i - 1) {
                     System.out.print("*");
                 } else {
                     System.out.print(" ");
                 }
             }
             System.out.println();
         }
     }
 }
Java基础知识强化07:打印出空心菱形的更多相关文章
- Java基础知识强化之集合框架笔记76:ConcurrentHashMap之 ConcurrentHashMap简介
		
1. ConcurrentHashMap简介: ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和Hashtable功能相同但是线程安全的方法.Conc ...
 - Java基础知识强化105:打印数组的方法总结
		
1. 使用for循环打印数组. 2. 使用Arrays工具类,将数组转化为有序的List打印出来. 3. 使用Arrays工具类,使用Arrays.toString()输出数组内容. 上面三种方法打印 ...
 - Java基础知识强化14:Java死亡竞赛题目解析
		
一个小型网站上发布了一个称为Java“死亡竞赛”的新项目.测验发布后,超过20000位开发者参加了测验.网站以20道关于Java的多选题为主.我们得到了众多开发者的测验统计数据,今天,我们非常乐意 ...
 - Java基础知识强化之多线程笔记01:多线程基础知识(详见Android(java)笔记61~76)
		
1. 基础知识: Android(java)学习笔记61:多线程程序的引入 ~ Android(java)学习笔记76:多线程-定时器概述和使用
 - Java基础知识强化80:Math类random()方法的小扩展(控制产生目的数字的概率)
		
1. Math.random()方法: Math.random()出现的数据是0.0<= x < 1.0之间,随机出现一个数据Math.random()>0.1概率是0.9 那么如下 ...
 - Java基础知识强化99:Java 常见异常及趣味解释
		
常见 Java 异常解释:(译者注:非技术角度分析.阅读有风险,理解需谨慎:) 1. java.langjava.lang软件包是java语言的核心部分,它提供了java中的基础类. java.lan ...
 - Java基础知识强化之网络编程笔记13:TCP之TCP协议上传图片并给出反馈
		
1. TCP协议上传图片并给出反馈: (1)客户端: package cn.itcast_13; import java.io.BufferedInputStream; import java.io. ...
 - Java基础知识强化之网络编程笔记12:TCP之TCP协议上传文本文件并给出反馈
		
1. 客户端: package cn.itcast_12; import java.io.BufferedReader; import java.io.BufferedWriter; import j ...
 - Java基础知识强化之IO流笔记60:打印流 之 改进复制文本文件的案例
		
1. 使用打印流改进复制文本文件的案例 2. 代码示例: package cn.itcast_03; import java.io.BufferedReader; import java.io.Buf ...
 
随机推荐
- C++11的新特性lambda的小试牛刀RAII
			
C/C++的资源是手动管理的 这导致程序员在申请资源时,最后用完了偶尔会忘记回收 C++语言的发明者倡导RAII,资源获取即初始化 使用对象来管理资源的生命周期,在超出作用域时,析构函数自动释放资源 ...
 - jquery判断邮箱格式问题
			
方法一: var search_str = /^[\w\-\.]+@[\w\-\.]+(\.\w+)+$/; var email_val = $("#Email").val(); ...
 - bzoj 2734: [HNOI2012]集合选数 状压DP
			
2734: [HNOI2012]集合选数 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 560 Solved: 321[Submit][Status ...
 - 谈谈在keil下的代码定位
			
关于C语言,我们一般都知道对于RAM定位可以用关键字 _at_,但对于程序代码定位往往感到很迷惑, 其实keil中的程序代码定位功能极为强大 Menu: Options for Target 'Tar ...
 - DUILIB创建不规则窗体,自定义控件(很不错的几十篇文章)
			
http://blog.csdn.net/harvic880925/article/details/8925650 http://blog.csdn.net/harvic880925/article/ ...
 - Monkey ‘mk_request_header_process’函数输入验证漏洞
			
漏洞名称: Monkey ‘mk_request_header_process’函数输入验证漏洞 CNNVD编号: CNNVD-201308-003 发布时间: 2013-08-22 更新时间: 20 ...
 - OA请假流程 -- 编码
			
OA请假流程 -- 编码 凡是内容不会发生变化的,都要写在xml配置文件中.需要定义如下内容: <process>标签 id英文命名 和 name 中文命名,然后只要与该流程相关的资源均以 ...
 - 利用腾讯企业邮箱开放API获取账户未读邮件数初探
			
公司一直使用腾讯提供的免费企业邮箱服务,今天用管理员帐户登录后发现,原来现在腾讯的企业邮箱也开放了部分API 你可以通过开放接口实现以下功能: 数据同步 数据同步可以帮助你同步部门成员信息,你还可以创 ...
 - leetcode  栈 括号匹配
			
https://oj.leetcode.com/problems/valid-parentheses/ 遇到左括号入栈,遇到右括号出栈找匹配,为空或不匹配为空, public class Soluti ...
 - lost connection to mysql server reading initial communication packet