定義:用于控制代碼執(zhí)行順序的語句草姻。
計算機(jī)程序具有以下三種基本結(jié)構(gòu):順序結(jié)構(gòu)溪椎、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)誊锭。
順序結(jié)構(gòu):無需借助任何流程控制語句蠢熄,程序代碼從上到下逐行執(zhí)行。
分支結(jié)構(gòu):需要借助if流程控制語句或switch流程控制語句炉旷,程序代碼根據(jù)邏輯表達(dá)式的結(jié)果或值/表達(dá)式結(jié)果的匹配情況選擇性執(zhí)行签孔。
循環(huán)結(jié)構(gòu):需要借助while流程控制語句叉讥、do while流程控制語句或for流程控制語句,程序代碼根據(jù)邏輯表達(dá)式的結(jié)果循環(huán)執(zhí)行饥追。
1. if流程控制語句的基本形式:
①if (邏輯表達(dá)式) {
代碼塊;
}
②if (邏輯表達(dá)式) {
代碼塊;
}
else {
代碼塊;
}
③if (邏輯表達(dá)式) {
代碼塊;
}
else if (邏輯表達(dá)式) {
代碼塊;
}
...
else {
代碼塊;
}
注:即便“if”語句/“else if”語句/“else”語句中的代碼塊只由一條代碼組成图仓,也不要省略這些語句中的“{}”。這樣不僅可以使代碼具備良好的可讀性但绕,還可以有效規(guī)避可能產(chǎn)生的語法錯誤救崔。
2. switch流程控制語句的基本形式:
switch (值/表達(dá)式,值/表達(dá)式結(jié)果應(yīng)為byte類型/short類型/int類型/char類型/枚舉類型/String類型的數(shù)據(jù)) {
case 值1: {
代碼塊;
break;(代碼塊以該語句結(jié)尾)
}
case 值2: {
代碼塊;
break;(代碼塊以該語句結(jié)尾)
}
...
default: {
代碼塊;
}
}
注:①“case”語句和“default”語句中的“{}”可以省略捏顺,即便其中的代碼塊由多條語句組成六孵。②“default”語句中的代碼塊可以不以“break;”語句結(jié)尾。③如果“case”語句中的代碼塊不包含“break;”語句幅骄,那么當(dāng)表達(dá)式與該“case”語句相匹配時劫窒,不但會執(zhí)行該“case”語句中的代碼塊,還會執(zhí)行后續(xù)“case”語句中的代碼塊拆座,直到遇到一個“break;”語句主巍。我們將這種現(xiàn)象稱為“case穿透現(xiàn)象”。
3. for流程控制語句的基本形式:
for (初始化語句; 邏輯表達(dá)式挪凑,即循環(huán)條件; 迭代語句) {
代碼塊;(即循環(huán)體)
}
執(zhí)行順序:初始化語句→邏輯表達(dá)式→代碼塊→迭代語句→邏輯表達(dá)式→代碼塊→迭代語句→...→邏輯表達(dá)式(false)(注:最后執(zhí)行的一定是邏輯表達(dá)式)
注:①即便“for”語句中的代碼塊只由一條代碼組成孕索,也不要省略“for”語句中的“{}”。這樣不僅可以使代碼具備良好的可讀性躏碳,還可以有效規(guī)避可能產(chǎn)生的語法錯誤搞旭。②初始化語句、邏輯表達(dá)式菇绵、迭代語句都是可選項选脊。
4. while流程控制語句的基本形式:
初始化語句;
while (邏輯表達(dá)式,即循環(huán)條件) {
代碼塊;
迭代語句;(可以視作代碼塊的一部分)
}
執(zhí)行順序:初始化語句→邏輯表達(dá)式→代碼塊→迭代語句→邏輯表達(dá)式→代碼塊→迭代語句→...→邏輯表達(dá)式(false)(注:最后執(zhí)行的一定是邏輯表達(dá)式)
注:①即便“while”語句中的代碼塊只由一條代碼組成脸甘,也不要省略“while”語句中的“{}”恳啥。這樣不僅可以使代碼具備良好的可讀性,還可以有效規(guī)避可能產(chǎn)生的語法錯誤丹诀。②只有迭代語句是可選項钝的。
5. do while流程控制語句的基本形式:
初始化語句;
do {
代碼塊;
迭代語句;(可以視作代碼塊的一部分)
}while (邏輯表達(dá)式,即循環(huán)條件); ???——注意末尾的“;”
執(zhí)行順序:初始化語句→代碼塊→迭代語句→邏輯表達(dá)式→代碼塊→迭代語句→邏輯表達(dá)式→...→代碼塊→迭代語句→邏輯表達(dá)式(false)(注:最后執(zhí)行的一定是邏輯表達(dá)式)
注:①即便“do while”語句中的代碼塊只由一條代碼組成铆遭,也不要省略“do while”語句中的“{}”硝桩。這樣不僅可以使代碼具備良好的可讀性,還可以有效規(guī)避可能產(chǎn)生的語法錯誤枚荣。②只有迭代語句是可選項碗脊。
6. “continue;”語句、“break;”語句和“return;”語句橄妆。
①“continue;”語句:用于跳過代碼塊中出現(xiàn)在“continue;”語句之后的語句(只適用于當(dāng)前次循環(huán)衙伶,不會終止當(dāng)前循環(huán))祈坠。
②“break;”語句:用于跳過代碼塊中出現(xiàn)在“break;”語句之后的語句(會終止循環(huán)/提前結(jié)束當(dāng)前循環(huán))。
③“return;”語句:用于結(jié)束當(dāng)前方法矢劲。
④“continue;”語句和“break;”語句的特殊用法(以“break;”語句為例):