最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

教你如何使用Java輸出各種形狀

 更新時(shí)間:2021年09月16日 14:25:31   作者:CodingDGSun  
本文小編將向大家介紹的是如何利用Java輸出各種不同的形狀,本文一共介紹了七種有趣的形狀,感興趣的小伙伴趕快收藏起來(lái)吧

1、輸出矩形

以此矩形案例(4行,9列的矩形)為例

public static void main(String[] args) {
        //輸出矩形
        for (int i = 1; i <= 4; i++) {//控制行,即4行
            for (int j = 1; j <= 9; j++) {//控制輸出的*的個(gè)數(shù),每行9個(gè)
                System.out.print("*");
            }
            //換行
            System.out.println();
        }
    }

輸出結(jié)果:

*********
*********
*********
*********

2、前面有空格的矩形

以此矩形案例(4行,9列的矩形)為例

public static void main(String[] args) {
        //輸出前面有空格矩形
        for (int i = 1; i <= 4; i++) {//控制行,即4行
            //輸出空格
            for (int k = 1; k <= 5; k++) {//控制空格,即每行開(kāi)始輸出5個(gè)空格
                System.out.print(" ");
            }
            for (int j = 1; j <= 9; j++) {//控制輸出的*的個(gè)數(shù),每行9個(gè)
                System.out.print("*");
            }
            //換行
            System.out.println();
        }
    }

輸出結(jié)果:

     *********
     *********
     *********
     *********

3、輸出平行四邊形

以此矩形案例(4行,9列的矩形)為例,要變成平行四邊形

  • 第一行前面輸出8個(gè)空格
  • 第二行前面輸出7個(gè)空格
  • 第三行前面輸出6個(gè)空格
  • 第四行前面輸出5個(gè)空格
        ********* 1 8
       ********* 2 7
      ********* 3 6
     ********* 4 5

綜上所述,得出規(guī)律:行數(shù)+空格數(shù)=9

public static void main(String[] args) {
        //輸出平行四邊形
        for (int i = 1; i <= 4; i++) {//控制行,即4行
            //輸出空格
            for (int k = 1; k <= 9 - i; k++) {//控制空格,行數(shù)+空格數(shù)=9,即每行開(kāi)始輸出9-i個(gè)空格
                System.out.print(" ");
            }
            for (int j = 1; j <= 5; j++) {//控制輸出的*的個(gè)數(shù),每行5個(gè)
                System.out.print("*");
            }
            //換行
            System.out.println();
        }
    }

輸出結(jié)果:

      *****
       *****
      *****
     *****

4、輸出三角形

以此案例(4行)為例,要變成三角形

  • 第一行前面輸出8個(gè)空格,1個(gè)星
  • 第二行前面輸出7個(gè)空格,3個(gè)星
  • 第三行前面輸出6個(gè)空格,5個(gè)星
  • 第四行前面輸出5個(gè)空格,7個(gè)星
        * 1 8 1
       *** 2 7 3
      ***** 3 6 5
     ******* 4 5 7

綜上所述,得出規(guī)律:行數(shù)+空格數(shù)=9,2x行數(shù)-1=星的個(gè)數(shù)

public static void main(String[] args) {
        //輸出三角形
        for (int i = 1; i <= 4; i++) {//控制行,即4行
            //輸出空格
            for (int k = 1; k <= 9 - i; k++) {//控制空格,行數(shù)+空格數(shù)=9,即每行開(kāi)始輸出9-i個(gè)空格
                System.out.print(" ");
            }
            for (int j = 1; j <= 2 * i - 1; j++) {//控制輸出的*的個(gè)數(shù),2x行數(shù)-1=星的個(gè)數(shù),即每行2 * i -1個(gè)星
                System.out.print("*");
            }
            //換行
            System.out.println();
        }
    }

輸出結(jié)果:

        *
       ***
      *****
     *******

5、輸出菱形

此案例由上面三角形(4行)和下面倒三角形(3行)組合,變成菱形

上面三角形

第一行前面輸出8個(gè)空格,1個(gè)星
第二行前面輸出7個(gè)空格,3個(gè)星
第三行前面輸出6個(gè)空格,5個(gè)星
第四行前面輸出5個(gè)空格,7個(gè)星

下面倒三角形

  • 第一行前面輸出6個(gè)空格,5個(gè)星
  • 第二行前面輸出7個(gè)空格,3個(gè)星
  • 第三行前面輸出8個(gè)空格,1個(gè)星
        * 1 8 1
       *** 2 7 3
      ***** 3 6 5
     ******* 4 5 7
      *****   1 6 5
       ***     2 7 3
        *       3 8 1

綜上所述,得出規(guī)律:上面三角形,行數(shù)+空格數(shù)=9,2x行數(shù)-1=星的個(gè)數(shù);下面倒三角形,行數(shù)+5=空格數(shù),7-2x行數(shù)=星的個(gè)數(shù)

public static void main(String[] args) {
        //輸出上面三角形
        for (int i = 1; i <= 4; i++) {//控制行,即4行
            //輸出空格
            for (int k = 1; k <= 9 - i; k++) {//控制空格,行數(shù)+空格數(shù)=9,即每行開(kāi)始輸出9-i個(gè)空格
                System.out.print(" ");
            }
            for (int j = 1; j <= 2 * i - 1; j++) {//控制輸出的*的個(gè)數(shù),2x行數(shù)-1=星的個(gè)數(shù),即每行2 * i -1個(gè)星
                System.out.print("*");
            }
            //換行
            System.out.println();
        }

        //輸出下面倒三角形
        for (int i = 1; i <= 3; i++) {//控制行,即3行
            //輸出空格
            for (int k = 1; k <= i + 5; k++) {//控制空格,行數(shù)+5=空格數(shù),即每行開(kāi)始輸出i+5個(gè)空格
                System.out.print(" ");
            }
            for (int j = 1; j <= 7 - 2 * i; j++) {//控制輸出的*的個(gè)數(shù),7-2x行數(shù)=星的個(gè)數(shù),即每行7 - 2 * i個(gè)星
                System.out.print("*");
            }
            //換行
            System.out.println();
        }
    }

輸出結(jié)果:

        *
       ***
      *****
     *******
      *****
       ***
        *

5、輸出空心菱形

此案例由上面三角形(4行)和下面倒三角形(3行)組合,變成菱形,中間星形由空格代替

        *
       * *
      *   *
     *     *
      *   *  
       * *    
        *      

得出規(guī)律:在輸出星的地方,每行第一個(gè)和最后一個(gè)輸出星,其余輸出空格

 public static void main(String[] args) {
        //輸出上面三角形
        for (int i = 1; i <= 4; i++) {//控制行,即4行
            //輸出空格
            for (int k = 1; k <= 9 - i; k++) {//控制空格,行數(shù)+空格數(shù)=9,即每行開(kāi)始輸出9-i個(gè)空格
                System.out.print(" ");
            }
            for (int j = 1; j <= 2 * i - 1; j++) {//控制輸出的*的個(gè)數(shù),2x行數(shù)-1=星的個(gè)數(shù),即每行2 * i -1個(gè)星
                //在首和尾輸出星,其余輸出空格
                if (j == 1 || j == 2 * i - 1) {
                    System.out.print("*");
                } else {
                    System.out.print(" ");
                }
            }
            //換行
            System.out.println();
        }

        //輸出下面倒三角形
        for (int i = 1; i <= 3; i++) {//控制行,即3行
            //輸出空格
            for (int k = 1; k <= i + 5; k++) {//控制空格,行數(shù)+5=空格數(shù),即每行開(kāi)始輸出i+5個(gè)空格
                System.out.print(" ");
            }
            for (int j = 1; j <= 7 - 2 * i; j++) {//控制輸出的*的個(gè)數(shù),7-2x行數(shù)=星的個(gè)數(shù),即每行7 - 2 * i個(gè)星
                //在首和尾輸出星,其余輸出空格
                if (j == 1 || j == 7 - 2 * i) {
                    System.out.print("*");
                } else {
                    System.out.print(" ");
                }
            }
            //換行
            System.out.println();
        }
    }

輸出結(jié)果:

        *
       * *
      *   *
     *     *
      *   *
       * *
        *

6、輸出正方形

以此案例(5行,5列的正方形)為例

public static void main(String[] args) {
        //輸出正方形
        int len = 5;//正方形邊長(zhǎng)
        for (int i = 1; i <= len; i++) {//控制行,即4行
            for (int j = 1; j <= len; j++) {//輸出星,即每行輸出j個(gè)星
                System.out.print("*");
            }
            //換行
            System.out.println();
        }
    }

輸出結(jié)果:

*****
*****
*****
*****
*****

7、輸出實(shí)心菱形

以此案例(5行,5列)為例

  • 第一行第一個(gè)和最后一個(gè)星的位置是3和3
  • 第二行第一個(gè)和最后一個(gè)星的位置是2和4
  • 第三行第一個(gè)和最后一個(gè)星的位置是1和5
  • 第四行第一個(gè)和最后一個(gè)星的位置是2和4
  • 第五行第一個(gè)和最后一個(gè)星的位置是3和3
  *  1 3 3
 ***  2 2 4
*****  3 1 5
 ***    4 2 4 
  *      5 3 3 

public static void main(String[] args) {
        //輸出實(shí)心菱形
        int len = 5;//邊長(zhǎng)
        int first = len / 2 + 1;//開(kāi)始輸出星的位置
        int end = len / 2 + 1;//結(jié)束輸出星的位置
        boolean flag = true;//如果是上半部三角形則是true,如果是下半倒三角形則是false

        for (int i = 1; i <= len; i++) {//控制行,即4行
            for (int j = 1; j <= len; j++) {//輸出星,即每行輸出j個(gè)星
                if (j >= first && j <= end) {//在每行的起始至結(jié)束位置輸出星
                    System.out.print("*");
                } else {
                    System.out.print(" ");
                }
            }
            //換行
            System.out.println();

            if(end == len){//最后一個(gè)星位置是邊長(zhǎng)寬度
                flag = false;//下一行,馬上執(zhí)行下半部倒三角形
            }

            if(flag){
                //在上半三角形,開(kāi)始輸出星的位置first前移1,結(jié)束輸出星的位置end后移1
                first--;
                end++;
            }else {
                //在下半倒三角形,開(kāi)始輸出星的位置first后移1,結(jié)束輸出星的位置end前移1
                first++;
                end--;
            }
        }
    }

輸出結(jié)果:

  * 
 ***
*****
 ***
  * 

如果想輸出空心菱形則只需要將:

if (j >= first && j <= end)


改成:

if (j == first || j == end)

到此這篇關(guān)于教你如何使用Java輸出各種形狀的文章就介紹到這了,更多相關(guān)Java輸出形狀內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • spring解決循環(huán)依賴的簡(jiǎn)單方法

    spring解決循環(huán)依賴的簡(jiǎn)單方法

    這篇文章主要給大家介紹了關(guān)于spring解決循環(huán)依賴的簡(jiǎn)單方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Java中Parser的用法

    Java中Parser的用法

    這篇文章主要介紹了Java?Parser使用指南,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-05-05
  • 使用IntelliJ IDEA 15和Maven創(chuàng)建Java Web項(xiàng)目(圖文)

    使用IntelliJ IDEA 15和Maven創(chuàng)建Java Web項(xiàng)目(圖文)

    本篇文章主要介紹了使用IntelliJ IDEA 15和Maven創(chuàng)建Java Web項(xiàng)目(圖文),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • IDEA中調(diào)用方法時(shí),如何同步顯示方法的注釋信息

    IDEA中調(diào)用方法時(shí),如何同步顯示方法的注釋信息

    這篇文章主要介紹了IDEA中調(diào)用方法時(shí),如何同步顯示方法的注釋信息問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • Java中解壓縮文件的方法詳解(通用)

    Java中解壓縮文件的方法詳解(通用)

    在軟件開(kāi)發(fā)和數(shù)據(jù)處理領(lǐng)域,文件的解壓縮和壓縮是常見(jiàn)的任務(wù),下面這篇文章主要給大家介紹了關(guān)于Java中解壓縮文件的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-06-06
  • Java使用策略模式解決商場(chǎng)促銷(xiāo)商品問(wèn)題示例

    Java使用策略模式解決商場(chǎng)促銷(xiāo)商品問(wèn)題示例

    這篇文章主要介紹了Java使用策略模式解決商場(chǎng)促銷(xiāo)商品問(wèn)題,簡(jiǎn)單描述了策略模式的概念、原理,并結(jié)合實(shí)例形式分析了Java基于策略模式解決商品促銷(xiāo)問(wèn)題的相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • JAVAlogback日志管理詳解

    JAVAlogback日志管理詳解

    本篇文章主要介紹了在SpringBoot中使用Logback管理記錄日志,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2021-09-09
  • java中的Io(input與output)操作總結(jié)(二)

    java中的Io(input與output)操作總結(jié)(二)

    這一節(jié)我們來(lái)討論關(guān)于文件自身的操作包括:創(chuàng)建文件對(duì)象、創(chuàng)建和刪除文件、文件的判斷和測(cè)試、創(chuàng)建目錄、獲取文件信息、列出文件系統(tǒng)的根目錄、列出目錄下的所有文件,等等,感興趣的朋友可以了解下
    2013-01-01
  • Java中緩沖流的使用與性能提升(讓文件操作更高效)

    Java中緩沖流的使用與性能提升(讓文件操作更高效)

    本文通過(guò)實(shí)例代碼介紹了Java中緩沖流的概念、工作原理和性能提升,并提供了字節(jié)緩沖流和字符緩沖流的使用示例,緩沖流通過(guò)在內(nèi)存中創(chuàng)建緩沖區(qū),減少實(shí)際的I/O操作次數(shù),從而提升文件讀寫(xiě)性能,結(jié)合實(shí)例代碼給大家講解的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • 詳解Java中的時(shí)區(qū)類(lèi)TimeZone的用法

    詳解Java中的時(shí)區(qū)類(lèi)TimeZone的用法

    TimeZone可以用來(lái)獲取或者規(guī)定時(shí)區(qū),也可以用來(lái)計(jì)算時(shí)差,這里我們就來(lái)詳解Java中的時(shí)區(qū)類(lèi)TimeZone的用法,特別要注意下面所提到的TimeZone相關(guān)的時(shí)間校準(zhǔn)問(wèn)題.
    2016-06-06

最新評(píng)論

宜丰县| 桓台县| 牡丹江市| 迁西县| 寿阳县| 南岸区| 永清县| 轮台县| 凉城县| 大洼县| 绥滨县| 永吉县| 青岛市| 略阳县| 镇宁| 边坝县| 宁河县| 玉树县| 格尔木市| 曲麻莱县| 大足县| 包头市| 宕昌县| 科尔| 漯河市| 苏州市| 观塘区| 益阳市| 福清市| 辛集市| 昭平县| 安远县| 香港| 车致| 三门峡市| 哈尔滨市| 平安县| 泰宁县| 台东市| 绥滨县| 陆丰市|