Java語言——流程控制

???????做任何事情都要遵循一定的原則。程序設計也是如此,需要有流程控制語言實現與用戶的交流,并根據用戶的輸入決定程序要“做什么”、“怎么做”等。


Java語言

一、復合語句

???????與C語言以及其他語言相同,Java語言的復合語句是以整個區塊為單位的語句,所以又稱為塊語句。復合語句由開括號“{”開始,閉括號“}”結束。復合語句的每個語句都是從上往下被執行。復合語句以整個塊為單位,可以用在任何一個單獨語句可以用到的地方,并且在復合語句中還可以嵌套符合語句。
示例如下:


復合語句

???????在使用復合語句時需要注意,復合語句為局部變量創建了一個作用域,該作用域為程序的一部分,在該作用域中某個變量被創建并能夠被使用。

二、條件語句

1.if條件語句

???????使用if條件語句,可選擇是否要執行緊跟在條件之后的那個語句。關鍵字if之后是作為條件的“布爾表達式”,如果該表達式返回的結果為true,則執行其后的語句;若為false,則不執行if條件之后的語句。

1.1簡單的if條件語句

語法如下:

if(布爾表達式){
語句序列
}

布爾表達式:必要參數,表示它最后返回的結果必須是一個布爾值。它可以是一個單純的布爾變量或常量,也可以是使用關系或布爾運算符的表達式。
語句序列:可選參數。可以是一條或者多條語句,當表達式的值為true時執行這些語句。若語句序列中僅有一條語句,則可以省略條件語句中的“{}”。

if條件語句的執行過程

1.2if...else語句

語法如下:

if(表達式){
若干語句
}
else{
若干語句
}

if后面()內的表達式的值必須是boolean型的。如果表達式的值為true,則執行緊跟if語句的復合語句;如果表達式的值為false,則執行else后面的復合語句。if...else語句的執行過程如圖所示:

if...else語句的執行過程

1.3if...else if多分支語句

語法如下:

if(條件表達式1){
語句序列1
}
else if(條件表達式2){
語句序列2
}
...
else if(表達式n){
語句序列n
}

條件表達式1——條件表達式n:必要參數。可以由多個表達式組成,但最后返回的結果一定要為boolean類型。
語句序列:可以是一條或者多條語句,當表達式1的值為true時,執行語句序列1;當條件表達式2的值為true時,執行語句序列2,依次類推。if...else if多分支語句的執行過程如圖所示:

if...else if多分支語句的執行過程

2.switch多分支語句

???????在Java語言中,可以使用switch語句將動作組織起來,以一個簡單明了的方式來實現“多選一”的選擇。語法如下:

switch(表達式)
{
case  常量值1:
      語句塊1
      [break;]
...
case  常量值n:
      語句塊n
      [break;]
default;
       語句塊n+1
      [break;]
}

???????switch語句中表達式的值必須是整型、字符型或字符串類型,常量值1~n必須也是整型、字符型或字符串類型。switch語句首先計算表達式的值,如果表達式的值和某個case后面的變量值相同,則執行case語句后的若干個語句直到遇到break語句為止。此時如果該語句中沒有break語句,將繼續執行后面case中的若干語句,直到遇到break語句為止。若沒有一個常量與表達式的值相同,則執行default后面的語句。default語句為可選的,如果它不存在,且switch語句中表達式的值不與任何case的常量值相同,switch則不做任何處理。switch語句的執行過程如下:


switch語句的執行過程

三、循環語句

1.while語句

???????while語句也稱條件判斷語句,它的循環方式為利用一個條件來控制是否要繼續反復執行這個語句。語法如下:

while(條件表達式){
執行語句
}

???????當條件表達式的返回值為真時,則執行“{}”中的語句,當執行完“{}”中的語句后,重新判斷條件表達式的返回值,直到表達式返回的結果為假時,退出循環。while循環語句的執行過程如圖所示:


while循環語句的執行過程

2.do...while語句

???????do...while循環語句與while循環語句類似,它們之間的區別是while語句為先判斷條件是否成立再執行循環體,而do...while循環語句則先執行一次循環后,再判斷條件是否成立。也就是說do...while循環語句中“{}”中的程序段至少要被執行一次。語法如下:

do{
執行語句
}
while(條件表達式);

do...while循環語句的執行過程如下:

do...while循環語句的執行過程

3.for循環語句

3.1for語句

語法如下:

for(表達式1;表達式2;表達式3)
{
語句序列
}

???????在執行for循環時,首先執行表達式1,完成某一變量的初始化工作;下一步判斷表達式2的值,若表達式2的值為true,則進入循環體;在執行完循環體后緊接著計算表達式3,這部分通常是增加或減少循環控制變量的一個表達式。這樣一輪循環就結束了。第二輪循環從計算表達式2開始,若表達式2返回true,則繼續循環,否則跳出整個for語句。for循環語句執行過程如下圖所示:

for循環語句執行過程

3.2foreach語句

???????foreach語句是for語句的特殊簡化版本,不能完全替代for語句,但任何foreach語句都可以改寫為for語句版本。foreach語句在遍歷數組等方面有很大的方便。語法如下:

for(元素變量x:遍歷對象obj)
    引用了x的Java語句;
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容