流程控制語句

定義:用于控制代碼執(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;”語句為例):

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末赦拘,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子芬沉,更是在濱河造成了極大的恐慌躺同,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件丸逸,死亡現(xiàn)場離奇詭異蹋艺,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)黄刚,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進(jìn)店門捎谨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人隘击,你說我怎么就攤上這事⊙忻” “怎么了埋同?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長棵红。 經(jīng)常有香客問我凶赁,道長,這世上最難降的妖魔是什么逆甜? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任虱肄,我火速辦了婚禮,結(jié)果婚禮上交煞,老公的妹妹穿的比我還像新娘咏窿。我一直安慰自己,他們只是感情好素征,可當(dāng)我...
    茶點故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布集嵌。 她就那樣靜靜地躺著,像睡著了一般御毅。 火紅的嫁衣襯著肌膚如雪根欧。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天端蛆,我揣著相機(jī)與錄音凤粗,去河邊找鬼。 笑死今豆,一個胖子當(dāng)著我的面吹牛嫌拣,可吹牛的內(nèi)容都是我干的柔袁。 我是一名探鬼主播,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼亭罪,長吁一口氣:“原來是場噩夢啊……” “哼瘦馍!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起应役,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤情组,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后箩祥,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體院崇,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年袍祖,在試婚紗的時候發(fā)現(xiàn)自己被綠了底瓣。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡蕉陋,死狀恐怖捐凭,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情凳鬓,我是刑警寧澤茁肠,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站缩举,受9級特大地震影響垦梆,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜仅孩,卻給世界環(huán)境...
    茶點故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一托猩、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧辽慕,春花似錦京腥、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至温艇,卻和暖如春因悲,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背勺爱。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工晃琳, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓卫旱,卻偏偏與公主長得像人灼,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子顾翼,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,044評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 復(fù)合語句 復(fù)合語句包含其他語句(組)投放,它們以某種方式影響或控制那些其他語句的執(zhí)行。一般來說适贸,復(fù)合語句跨越多個邏輯行...
    常大鵬閱讀 3,079評論 0 6
  • 學(xué)習(xí)目標(biāo) 掌握鍵盤輸入各種數(shù)據(jù)類型的值 掌握if語句的格式和執(zhí)行流程 掌握if...else語句的格式和執(zhí)行流程 ...
    bjfStart閱讀 448評論 0 0
  • 流程控制語句 ifif語句是編程語言最常用的語句灸芳,語法 其中condition可以是任意表達(dá)式,結(jié)果不一定是布爾值...
    LouisJ閱讀 188評論 0 0
  • JS中的程序是從上到下一行一行執(zhí)行的 通過流程控制語句可以控制程序執(zhí)行流程拜姿,使程序可以根據(jù)一定的條件來選擇執(zhí)行 語...
    牛耀閱讀 414評論 0 0
  • 1烙样,if...else if(條件表達(dá)式1){執(zhí)行代碼塊1;}else if (條件表達(dá)式2){執(zhí)行代碼塊2;}…...
    felix521閱讀 151評論 0 0