欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JAVA用for循環(huán)打印空心菱形

 更新時間:2022年01月29日 09:05:45   作者:qq_58661548  
大家好,本篇文章主要講的是JAVA用for循環(huán)打印空心菱形,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下

空心菱形如圖所示

那么我們應(yīng)該如何去寫出來呢?這就不得不引出一個非常經(jīng)典的案例,金字塔案例,菱形像不像是兩個對稱的金字塔呢?廢話不多說了,上思路:(僅代表個人理解,歡迎指點)

1.首先我們要寫出一個空心菱形,那么我們首先得把需求由繁化簡,把他拆分成一個一個簡單的需求,

1.1那我們就先寫半個金字塔,

是不是很眼熟的結(jié)構(gòu),沒錯和九九乘法表類似的結(jié)構(gòu),上代碼

for(int i = 1;i <= 5;i++){ //i代表層數(shù),這個可以設(shè)置一個變量接收,隨便幾層都行,不一定非要是5
			for(int j = 1;j <= i;j++){ //j代表個數(shù)
				System.out.print("*");
			}
			System.out.print("\n");
            //System.out.println(" ");這樣也行
		}

 半個金字塔出來了,那我們接下來就寫一個完整的空心金字塔

//輸出一個空心金字塔
		//思路分析:	
		//1.補全金字塔
		//    *   //空格數(shù)為 總層數(shù) - 1 //個數(shù)為 1 3 5 7 9 什么規(guī)律呢 就是 2 * 當前層數(shù) - 1
	    //   ***  //空格數(shù)為 總層數(shù) - 1
	    //  *****
	    // *******
	    //*********	  
	    //2.將金字塔鏤空
        //   *    第一層 1個
        //  *  *  第二次 2個
        // *     *第三層 2個
        //  ....  第n層  2個
        //*********最后一層 全部有
        //大致就是這個圖形,(圖形不準確,請自行腦補)
		for(int i = 1;i <= 5;i++){// i是層數(shù)
			//打印出每層前面的空格數(shù)
			for(int k = 1;k <= 5 - i;k++){
				System.out.print(" ");
			}
			//控制每層打印的個數(shù)
			for(int j = 1;j <= 2 * i - 1;j++){ //j是個數(shù)
				//空心金字塔都是第一個和最后一個位置有*,最后一層則是全部輸出
				if(j == 1 || j == 2 * i - 1|| i == 5){ 
					System.out.print("*");
				}else{
					System.out.print(" ");
				}
			}
			System.out.print("\n");
		}

 那么菱形就已經(jīng)很簡單了 我們只需要把空心金字塔最后一層的全部輸出去掉 也就是 i == 5注銷,就得到這么一個東西

菱形的工作已經(jīng)完成了大半,接下來照貓畫虎把下半部分寫出來就可以了

for(int a = 4;a > 0;a--){
			//打印空格
			for(int c = 1;c <= 5 - a;c++){
				System.out.print(" ");
			}
			for(int b = 1;b <= 2 * a -1;b++){
				if( b ==1 || b == 2 * a -1){
					System.out.print("*");
				}else{
					System.out.print(" ");
				}
			}
			System.out.print("\n");
		}

雖然菱形的下半部分是一個倒過來的金字塔, 但是其規(guī)律并沒有發(fā)生變化,空格數(shù)依舊是總層數(shù) - 1

個數(shù)也沒有發(fā)生變化,就是順序倒過來,把++改成--就好了

完整的代碼:

for(int i = 1;i <= 5; i++){
			//控制前面的空格數(shù)
			for(int k = 1;k <= 5 - i;k++){
				System.out.print(" ");
			}
			//控制每行輸出的*的個數(shù)
			for(int j = 1;j <= 2 * i - 1;j++){
				//每行第一個和最后一個位置有*,最后一行全有
				if(j == 1 || j == 2 * i - 1){
					System.out.print("*");
				}else{
					System.out.print(" ");
				}
			}
			System.out.print("\n");
		}
		for(int a = 4;a > 0;a--){
			//打印空格
			for(int c = 1;c <= 5 - a;c++){
				System.out.print(" ");
			}
			for(int b = 1;b <= 2 * a -1;b++){
				if( b ==1 || b == 2 * a -1){
					System.out.print("*");
				}else{
					System.out.print(" ");
				}
			}
			System.out.print("\n");
		}

到此這篇關(guān)于JAVA用for循環(huán)打印空心菱形的文章就介紹到這了,更多相關(guān)JAVA for循環(huán)輸出菱形內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring Security OAuth2集成短信驗證碼登錄以及第三方登錄

    Spring Security OAuth2集成短信驗證碼登錄以及第三方登錄

    這篇文章主要介紹了Spring Security OAuth2集成短信驗證碼登錄以及第三方登錄,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • 在eclipse中安裝Scala環(huán)境的步驟詳解

    在eclipse中安裝Scala環(huán)境的步驟詳解

    這篇文章主要介紹了在eclipse中安裝Scala環(huán)境的步驟,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • 詳解spring boot starter redis配置文件

    詳解spring boot starter redis配置文件

    spring-boot-starter-Redis主要是通過配置RedisConnectionFactory中的相關(guān)參數(shù)去實現(xiàn)連接redis service。下面通過本文給大家介紹在spring boot的配置文件中redis的基本配置,需要的的朋友參考下
    2017-07-07
  • 詳解Java 中的三種代理模式

    詳解Java 中的三種代理模式

    代理(Proxy)是一種設(shè)計模式,提供了對目標對象另外的訪問方式;這篇文章主要介紹了Java 中的三種代理模式,需要的朋友可以參考下
    2018-08-08
  • java中的Reference類型用法說明

    java中的Reference類型用法說明

    這篇文章主要介紹了java中的Reference類型用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • IDEA實現(xiàn)序列化時如何自動生成serialVersionUID的步驟

    IDEA實現(xiàn)序列化時如何自動生成serialVersionUID的步驟

    這篇文章主要介紹了IDEA實現(xiàn)序列化時如何自動生成serialVersionUID的步驟,首先安裝GenerateSerialVersionUID插件,當出現(xiàn)添加serialVersionUID選項,選中則會自動生成serialVersionUID,感興趣的朋友一起學(xué)習下吧
    2024-02-02
  • 判斷java文件類型TikaToolKit的實例

    判斷java文件類型TikaToolKit的實例

    這篇文章主要介紹了判斷java文件類型TikaToolKit的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • springboot之使用logback日志框架的圖文教程

    springboot之使用logback日志框架的圖文教程

    這篇文章主要介紹了springboot之使用logback日志框架的圖文教程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Java Integer.ValueOf()的一些了解

    Java Integer.ValueOf()的一些了解

    這篇文章主要介紹了Java Integer.ValueOf()的一些了解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2020-05-05
  • Java利用位運算實現(xiàn)加減乘除的方法詳解

    Java利用位運算實現(xiàn)加減乘除的方法詳解

    我們經(jīng)常使用的加減乘除,我們所看到的只是表面的效果,那么加減乘除在底層究竟是怎么實現(xiàn)的?今天就讓我們一探究竟
    2022-08-08

最新評論