For 迴圈也是一個常見的迴圈形式,比起while迴圈,其小括號後的內容只會執行一次,第一個分號前,通常用來宣告初始的變數,而宣告的變數再跳出迴圈後就會消失;第一個分號後每次執行迴圈本體前會執行一次,若符合條件,就迴執行迴圈本體,不符合,就會跳出迴圈;第二個分號後的內容每次執行玩迴圈本體後都會執行一次。
For迴圈語法如下。
for(初始式 ; 重複式(boolean);執行完迴圈後的重複式) {
陳述句1
陳述句2 …
}
以下有一個階層運算的例子,這是一個可以計算階層的程式,我們預設要算出10!。
步驟如下
Step1 階層運算從1開始乘,因此我們先宣告一個開始乘的數int s = 1。
Step2 進入for迴圈,宣告初始值 i = 1,接著,因為要乘到10,所以 i <= 10
最後每次執行完迴圈i都要加一,直到i = 10。
Step3 陳述式:s = s * i ,原本s = 1,i = 1,1 * 1回傳到s,s = 1,
執行完陳述式 i 要加 1,此時i = 2,再執行迴圈,s = 1,i = 2,1 * 2 = 2,
回傳到s,此時s = 2,i 要加 1,此時i = 3,再執行迴圈,直到 i = 10,
跳出迴圈。
Step4 跳出迴圈後,印出s,就是我們要的階層答案。
程式全碼如下,10! = 3628800
中斷或繼續迴圈
在迴圈中,我們還可以中斷或繼續迴圈,在執行迴圈時,若希望遇到什麼條件可以中斷或繼續執行迴圈,我們會用break 及 continue,搭配if條件式,
語法如下
break
for(初始式 ; 重複式(boolean);執行完迴圈後的重複式) {
陳述句1
陳述句2 …
If( 條件式 )
break;
}
continue
for(初始式 ; 重複式(boolean);執行完迴圈後的重複式) {
陳述句1
陳述句2 …
If( 條件式 )
continue;
}