java switch..case語句
阿新 • • 發佈:2018-12-16
語法:
switch(變數){
case 變數值1:
程式碼塊1;
break;
case 變數值2:
程式碼塊2;
break;
...
case default:
程式碼塊d;
break;
}
switch 變數型別:short、char、byte、enum、String型別
使用switch語句時,可能有一下幾種情形:
(1)每一個case語句都有break
int a = 5;
switch(a){
case 0:
System.out.println("0");
break;
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
break;
default:
System.out.println("default");
break;//這個break加不加都一樣。
}
系統自動從上到下的進行掃描,如果有匹配的case,則輸出對應的程式碼塊,如果沒有匹配的case,則輸入最後一個default的程式碼塊。
(2)每一個case語句都沒有break
int i = 5;
switch(i){
case 0:
System.out.println("0");
case 1:
System.out.println("1");
case 2:
System.out.println("2");
default:
System.out.println("default");
}
系統自動的從上到下進行掃描,如果沒有匹配到值,則輸出default;如果匹配到了值,則會輸出這個case一直到default。比如上面這個程式碼的i=1的時候,會輸出1 2 default.
(3)有一些case語句有break,一些沒有
int i = 0;
switch(i){
case 0:
System.out.println("0");
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
default:
System.out.println("default");
}
如果匹配到的case 在break 前面,則從匹配到的case一直執行到break 這一行的程式碼塊;如果匹配到的case在break後面,則會從匹配到的case 一直執行到default;如果都沒匹配到,則輸出default。
例如上面這個程式碼的結果就是 0 1