JAVA程序流程控制三大結構:
順序結構:
按順序逐行執行
選擇結構:
if選擇結構:
-
1、if
if (條件){
代碼塊1
}else{
代碼塊2
}
- true:代碼塊1
- false:代碼塊2
-
2、if else if
if (條件1){
代碼塊1
}else if(條件2){
代碼塊2
}else if(條件……){
代碼塊……
}else{
代碼塊n
}
- 條件1爲true:代碼塊1
- 條件2爲true:代碼塊2
- ……
- 否則:代碼塊n
-
注意:
- 在java中,字符串比較時,使用==比較的是地址是否一致,如果字符串中比較內容,則必須使用equals(),固定值.equals(比較的內容)
switch case選擇結構:
-
語法格式:
switch(表達式){
case 常量值:*;
break;
case 常量值:*;
break;
case 常量值:*;
break;
default:*;
break;
}
- switch case中表達式可以byte、short、int、char,在JDK7.0以後還可以String類型枚舉
- 可編寫任意個case
- case後面常量值的類型必須與表達式類型一致
- break表示中斷跳出
- default可有可無,如果寫,只有一個,當所有都不滿足執行default
-
常見注意事項:
- (當做等值操作時用)
- 1、case後常量值,可任意順序,一般按順序
- 2、default位置也可任意,建議放最後
- 3、break可有可無,若無,一直向下穿透,可根據情況編寫,建議有break
多重if與switch case區別:
-
多重if:
- 可以做等值操作也可以做區間操作
-
switch case:
- 只能做等值操作
循環結構:
循環的概念:
-
循環:
- 在java中重複,並只編寫一次
-
好處:
- 減少代碼冗餘性
-
常用的循環:
- for循環
- while循環
- do while循環
循環的特點:
- 循環條件
- 循環操作(循環體)
for循環:
-
單重循環:
-
語法結構:
-
for(表達式1;表達式2;表達式3) {
循環體;
}
- 表達式1:
- 完成變量的初始值,如int i=1;
- 表達式2:
- 完成循環條件判斷,如滿足true,則執行循環體,false時跳出循環,如i<=5;
- 表達式3:
- 完成變量的值的變化,如i++;
- 循環體可編寫任何語句
-
雙重循環:
-
語法結構:
-
for (表達式1;表達式2,表達式3){
for (表達式1;表達式2,表達式3){
循環體;
}
}
- 外層循環執行一次,則內層循環執行一遍!
-
注意事項:
-
1、for循環中,三個表達式可以省略,但分號必須編寫,即無限循環:Ctrl+C終止
-
2、表達式1可以省略,但需要在循環上(前定義,若無出錯)
-
3、表達式2省略則死循環,默認爲true
-
4、表達式3省略則死循環,解:表達式寫在循環體中,最後一條中(建議)
-
5、循環中的變量若在外使用會編譯錯誤,解:將表達式1聲明的變量在外聲明
- int i;
for (i=1;i<=5;i++){
- int i;
-
}
while循環:
-
語法結構:
while (循環條件){
循環體;
}
-
執行流程:
- 首先判斷條件,爲true時,執行循環體,知道爲false時跳出
do while循環:
-
特點:
- 先執行,再判斷
-
語法結構:
do {
循環體;
}while (循環條件);
-
執行流程:
- 先執行循環體,然後判斷條件,爲true時繼續循環,在判斷,直到false結束
break與continue區別:
使用場合不同:
-
break:
- 可以在switch case中使用,也可以用於循環中
-
continue:
- 只能在循環中使用
作用不同:
-
break:
- 當在switch case中或循環中遇到break,結束當前switch case或循環,執行外語句
-
continue:
- 表示繼續,循環中遇到,則結束當次循環進入下一次循環
循環中使用Continue:
循環中遇到continue時,則結束當次循環繼續執行下一次循環
循環中使用break:
循環中遇到break則結束當前整個循環,執行循環外的語句
三種循環異同:
1、語法格式
2、執行順序不同:
-
for和while:
- 先判斷條件爲true時,然後再執行
-
do:
- 先循環再判斷條件
3、使用情況不同:
-
當循環次數固定時,建議使用for循環
-
當循環次數不固定時,建議使用while循環,do while循環
- 先判斷,再執行,建議使用while循環
- 先執行,再判斷,建議使用do while循環
-
當循環條件第一次爲false時則:
- for循環執行0次循環體
- while循環執行0次循環體
- do while循環執行1次循環體
-
得出:
-
for循環:
- 0次……N次
-
while循環:
- 0次……N次
-
do while循環:
- 1次……N次
-