java中switch、while、do...while、for

1、Java條件語句之 switch

當須要對選項進行等值判斷時,使用 switch 語句更加簡潔明瞭。例如:根據考試的名次,給予前 4 名不一樣的獎品。第一名,獎勵筆記本一臺;第二名,獎勵 IPAD 2 一個;第三名,獎勵移動電源一個;最後一名獎勵 U 盤一個。編程

語法:spa

執行過程:當 switch 後表達式的值和 case 語句後的值相同時,從該位置開始向下執行,直到遇到 break 語句或者 switch 語句塊結束;若是沒有匹配的 case 語句則執行 default 塊的代碼。3d

如:code

不得不說的幾點小祕密:blog

一、 switch 後面小括號中表達式的值必須是整型或字符型get

二、 case 後面的值能夠是常量數值,如 一、2;也能夠是一個常量表達式,如 2+2 ;但不能是變量或帶有變量的表達式,如 a * 2it

三、 case 匹配後,執行匹配塊裏的程序代碼,若是沒有碰見 break 會繼續執行下一個的 case 塊的內容,直到遇到 break 語句或者 switch 語句塊結束 如class

 變量

運行結果:循環

 

四、 能夠把功能相同的 case 語句合併起來,如

五、 default 塊能夠出如今任意位置,也能夠省略

例子:

public class HelloWorld {
    public static void main(String[] args) {
        char today='日';
        switch(today){
            case '一':
            case '三':
            case '五':
                System.out.println("早餐吃包子");
                break;
            case '二':
            case '四':
            case '六':
                System.out.println("早餐吃油條");
                break;
            case '日'
                System.out.println("主席套餐");
                break;
            default:
        }
    }
}

2、Java循環語句之 while

生活中,有些時候爲了完成任務,須要重複的進行某些動做。如參加 10000 米長跑,須要繞 400 米的賽道反覆的跑 25 圈。在 Java 中實現功能時,也常常須要重複執行某些代碼,例如,咱們爲了表示「濃烈的愛」,但願輸出 1000 行「我愛慕課網!」。顯然,此時重複敲 1000 遍輸出語句是不靠譜滴!!那麼,有木有好的辦法來解決呢? 有,循環語句

Java 經常使用的 3 種循環: while 、 do...while 、 for

本小節我們先來聊聊 while

語法:

 

執行過程:

< 1 >、 判斷 while 後面的條件是否成立( true / false )

< 2 >、 當條件成立時,執行循環內的操做代碼 ,而後重複執行< 1 >、< 2 >, 直到循環條件不成立爲止

特色:先判斷,後執行

如:

例子:

public class HelloWorld {
    public static void main(String[] args) {
        
        int i = 1; // 表明 1 - 5 之間的數字
        
        // 當變量小於等於 5 時執行循環
        while (  i<=5     ) {
            
            // 輸出變量的值,而且對變量加 1,以便於進行下次循環條件判斷
            System.out.println(i);
            i++;
        }
    }
}

結果:

1

2

3

4

5

3、Java循環語句之 do...while

do...while 循環與 while 循環語法有些相似,但執行過程差異比較大。

語法:

 

執行過程:

<1>、 先執行一遍循環操做,而後判斷循環條件是否成立

<2>、 若是條件成立,繼續執行< 1 > 、< 2 >,直到循環條件不成立爲止

特色: 先執行,後判斷

因而可知,do...while 語句保證循環至少被執行一次

例如,依然輸出 1000 遍「我愛慕課網」,使用 do...while 的實現代碼爲:

例子:

public class HelloWorld {
    public static void main(String[] args) {
        
        int sum = 0; // 保存 1-50 之間偶數的和
        
        int num = 2; // 表明 1-50 之間的偶數
        
        do {
            //實現累加求和
            sum=sum+num;
            
            num = num + 2; // 每執行一次將數值加2,以進行下次循環條件判斷
            
        } while (num<=50); // 知足數值在 1-50 之間時重複執行循環
        
        System.out.println(" 50之內的偶數之和爲:" + sum );
    }
}

結果:

50之內的偶數之和爲:650

4、Java循環語句之 for

Java 的循環結構中除了 while 和 do...while 外,還有 for 循環,三種循環能夠相互替換。

語法: 

執行過程:

<1>、 執行循環變量初始化部分,設置循環的初始狀態,此部分在整個循環中只執行一次

<2>、 進行循環條件的判斷,若是條件爲 true ,則執行循環體內代碼;若是爲 false ,則直接退出循環

<3>、 執行循環變量變化部分,改變循環變量的值,以便進行下一次條件判斷

<4>、 依次從新執行< 2 >、< 3 >、< 4 >,直到退出循環

特色:相比 while 和 do...while 語句結構更加簡潔易讀

例如,輸出 1000 遍「我愛慕課網」,使用 for 的實現代碼爲:

須要留心的幾個小細節:

一、 for 關鍵字後面括號中的三個表達式必須用 「;」 隔開,三個表達式均可以省略,但 「;」 不能省略。

    a. 省略「循環變量初始化」,能夠在 for 語句以前由賦值語句進行變量初始化操做,如:

    b. 省略「循環條件」,可能會形成循環將一直執行下去,也就是咱們常說的「死循環」現象,如:

在編程過程當中要避免「死循環」的出現,所以,對於上面的代碼能夠在循環體中使用 break 強制跳出循環(關於 break 的用法會在後面介紹)。

    c. 省略「循環變量變化」,能夠在循環體中進行循環變量的變化,如:

二、 for 循環變量初始化和循環變量變化部分,能夠是使用 「,」 同時初始化或改變多個循環變量的值,如:

代碼中,初始化變量部分同時對兩個變量 i 和 j 賦初值,循環變量變化部分也同時對兩個變量進行變化,運行結果:

三、 循環條件部分可使用邏輯運算符組合的表達式,表示複雜判斷條件,但必定注意運算的優先級,如:

代碼中,必須同時知足變量 i 小於 10 ,而且 i 不等於 5 時纔會進行循環,輸出變量 i 的值。

例子:

public class HelloWorld {
    public static void main(String[] args) {
        int sum = 0; // 保存不能被3整除的數之和
        
        // 循環變量 i 初始值爲 1 ,每執行一次對變量加 1,只要小於等於 100 就重複執行循環
        for (int i = 1;i <= 100 ;i++) {
            
            // 變量 i 與 3 進行求模(取餘),若是不等於 0 ,則表示不能被 3 整除
            if (i % 3 != 0) {
                sum = sum + i; // 累加求和
            }
        }
        
        System.out.println("1到100之間不能被3整除的數之和爲:" + sum);
    }
}

結果:

1到100之間不能被3整除的數之和爲:3367

相關文章
相關標籤/搜索