App下載

Java 中的三種循環(huán)結(jié)構(gòu) 你會(huì)用么?

猿友 2021-01-04 15:41:18 瀏覽數(shù) (2448)
反饋

1.for循環(huán)

格式:

 for(初始化語(yǔ)句1; 判斷語(yǔ)句2; 步進(jìn)語(yǔ)句3){ 
         循環(huán)代碼4
 }

執(zhí)行流程: 

    先執(zhí)行1初始化語(yǔ)句
    執(zhí)行2判斷語(yǔ)句,如果判斷結(jié)果是true
    執(zhí)行4循環(huán)代碼
    執(zhí)行3步進(jìn)語(yǔ)句
    繼續(xù)回到2 4 3 2 4 3 
    如果判斷結(jié)果是false,代表循環(huán)結(jié)束
注意:
    初始化語(yǔ)句只在第一次循環(huán)中執(zhí)行,之后不再執(zhí)行

代碼演練:

public static void main(String[] args) {

        /*

        判斷0-10的奇偶數(shù)

         */

        //偶數(shù):能夠被2整除的數(shù)字稱為偶數(shù)

        // 0 是一個(gè)特殊的偶數(shù)

        for(int i=0;i<=10;i++){

            if (i%2 == 0){

                System.out.println(i+"是偶數(shù)");

            }else {

                System.out.println(i+"是奇數(shù)");

            }

        }

    }

2.while循環(huán)

格式:

初始化語(yǔ)句1;
while(判斷語(yǔ)句2){
        循環(huán)代碼3;
        步進(jìn)語(yǔ)句4;
 }

執(zhí)行流程:

1 初始化語(yǔ)句
2 執(zhí)行判斷語(yǔ)句,如果是true就執(zhí)行大括號(hào)里面的代碼,如果是false就結(jié)束循環(huán)
3 循環(huán)代碼
4 步進(jìn)語(yǔ)句
再次循環(huán)執(zhí)行2判斷語(yǔ)句

代碼演練:

public static void main(String[] args) {

        /*

        求1-100的累加和

         */

        int x = 1;

        int sum = 0;

        while (x<=100){

            sum += x;

            x++;

        }

        System.out.println("1-100的累加和為:"+sum);

    }

3.do-while循環(huán)

格式:

初始化語(yǔ)句1;
do{
        循環(huán)語(yǔ)句2;
        步進(jìn)語(yǔ)句3;
}while(判斷語(yǔ)句4);

執(zhí)行流程:

1 初始化語(yǔ)句
2 循環(huán)語(yǔ)句
3 步進(jìn)語(yǔ)句
4 判斷語(yǔ)句 , 如果判斷的結(jié)果是true就繼續(xù)循環(huán),如果判斷的結(jié)果是false就結(jié)束循環(huán)
注意:
 do-while循環(huán)是先執(zhí)行后判斷,不管條件是否滿足至少執(zhí)行一次

代碼演練:

public static void main(String[] args) {

        /*

        輸出1-10的和

         */

        int a = 1;

        int sum = 0;

        do {

            sum += a;

            a++;

        }while (a<=10);

        System.out.println("1-10的和為:"+sum);

    }

三種循環(huán)的使用場(chǎng)景

三種循環(huán)結(jié)構(gòu)均可實(shí)現(xiàn)相應(yīng)的功能,按照實(shí)際需要選擇更為簡(jiǎn)便的形式。以下為使用場(chǎng)景的總結(jié):

  • 明確循環(huán)次數(shù)的時(shí)候:建議使用for循環(huán)
  • 不明確循環(huán)次數(shù)的時(shí)候:建議使用while循環(huán)
  • do...while循環(huán)比較特殊,它先執(zhí)行循環(huán)體,然后根據(jù)判斷條件決定是否再次執(zhí)行循環(huán),即do...while至少執(zhí)行一次循環(huán)

循環(huán)嵌套

代碼演練1

public static void main(String[] args) {

        /*

        循環(huán)嵌套:

            外層循環(huán)執(zhí)行1次,內(nèi)存循環(huán)執(zhí)行一圈

         */

        /*

        循環(huán)出從0點(diǎn)0分-23點(diǎn)59分

         */

        //遍歷小時(shí)

        for (int i=0; i<24; i++){

            //遍歷分鐘

            for (int j=0; j<60; j++){

                System.out.println(i + "點(diǎn)" + j + "分");

            }

        }

代碼演練2

public static void main(String[] args) {

        for (int i = 1; i < 10; i++) {

            System.out.println("你是第" + i + "位顧客");

            while (true) {

                System.out.println("請(qǐng)選擇你想要購(gòu)買的商品:1.水果 2.蔬菜 3.飲料 4.結(jié)束購(gòu)買");

                Scanner sc = new Scanner(System.in);

                int a = sc.nextInt();

                if (a == 1) {

                    System.out.println("您購(gòu)買的是水果");

                } else if (a == 2) {

                    System.out.println("你購(gòu)買的是蔬菜");

                } else if (a == 3) {

                    System.out.println("您購(gòu)買的是飲品");

                } else if (a == 4) {

                    break;

                } else {

                    System.out.println("您輸入的指令有錯(cuò)誤");

                }

            }

        }

    }

兩種死循環(huán)的寫(xiě)法

1.while(true){...}
2.for(;;){...}

推薦好課:Java微課Java多線程講解


0 人點(diǎn)贊