switch語句格式:spa
switch(表達式){字符串
case 值1:it
語句體1;for循環
break;變量
case 值2:擴展
語句體2;循環
break;程序
…….方法
default:命名
語句體n+1;
Break;
}
switch: 表示這是switch選擇結構
表達式: byte,short,int,char,JDK5之後能夠是枚舉,JDK7之後能夠是字符串
case後面只能是常量,不能是變量,並且,多個case後面的值不能出現相同的
default能夠省略嗎?能夠,通常不建議。除非判斷的值是固定的
break能夠省略嗎? 能夠,通常不建議,不然結果可能不是你想要的
default的位置必定要在最後嗎? 能夠出如今switch語句任意位置
遇到break;執行到程序的末尾
int a = 2; int b = 1; switch (a) { default: b++; break; case 1: b++; case 2: b++; } System.out.println("b:::" + b); // 2
int a = 2; int b = 1; switch (a) { default: b++; case 1: b++; case 2: b++; } System.out.println("b:::" + b); // 2
int a = 2; int b = 1; switch (a) { default: b++; case 3: b++; case 4: b++; } System.out.println("b:::" + b); // 4
If語句使用場景:
針對結果是boolean類型的判斷
針對一個範圍的判斷
針對幾個常量值的判斷
switch語句使用場景:
針對幾個常量值的判斷
循環結構(for循環語句)
For循環語句格式:
For(初始化語句;判斷語句;控制語句) {
循環體語句;
}
A 執行初始化語句
B: 執行判斷條件語句,看其結構是true仍是false
若是是false,循環結束;若是是true,繼續執行
C: 執行循環體語句
D: 執行控制條件語句
E: 回到B繼續
基本格式
while(判斷條件語句){
循環體語句
}
擴展格式
初始化語句;
while(判斷條件語句) {
循環體語句;
控制條件語句;
}
場景區別: for循環適合針對一個範圍判斷進行操做
while循環適合判斷次數不明確操做
基本格式
do{
循環體語句
}while(判斷條件語句)
擴展格式
初始化語句
do{
循環體語句;
控制條件語句;
} while(判斷條件語句)
do..while循環至少會執行一次循環體
for循環和while循環只有條件成立的時候纔會執行循環體
注意事項:
優先考慮for 循環,再考慮while循環,最後考慮do…while循環
以下代碼是死循環
while(true){}; for(;;){}
‘\t’, tab鍵的位置 ‘\r’, 回車;‘\n’, 換行
break 中斷;continue 繼續;return返回
在選擇結構switch語句中
在循環語句中
跳出單層循環
跳出多層循環
帶標籤的跳出
格式: 標籤名: 循環語句
標籤名要符合Java的命名規則
one: for (int i = 0; i < 3; i++) { two: for (int j = 0; j < 5; j++) { if (j ==1) { break two; } System.out.println("L"); } } /**輸出 L L L*/
one: for (int i = 0; i < 3; i++) { two: for (int j = 0; j < 5; j++) { if (j ==1) { break one; } System.out.println("L"); } } /**輸出 L*/
break跳出本層循環,不執行本循環類的其餘語句,若是本類循環後面還有輸出語句,會輸出;
continue:跳過本次循環,不執行後面的,直接進入下一次循環
return:直接結束循環,不進入下一次循環;結束一個方法,也就是退出一個方法