for(初始化;條件式;更新){ 陳述句1; 陳述句2; }
(k ゚∀゚)<使用for迴圈的特別之處是它把迴圈的初始化、條件式和更新的部分都放在同一位置,程式碼的可讀性增加,看起來更加整齊,而且由於放在同一位置,管理也會十分方便,以下是流程圖。
除此之外,while迴圈和for迴圈有沒有其他差別?>( ゚ω゚ s)
(k ゚∀゚)<兩者的用法也是差不多,以下是一個while迴圈的範例。
var count=1; var message=""; while(count<=10){ message+=count+" "; count++; } System.inform(message);
(k ゚∀゚)<上述的範例亦可以轉換for迴圈,看看以下的範例。
var count; var message=""; for(count=1;count<=10;count++){ message+=count+" "; } System.inform(message);
的確變得容易管理,放在同一位置的話就不用經常尋找它們而煩惱。>( ゚ω゚ s)
(k ゚∀゚)<跟while一樣,我們可以在for迴圈裡宣告變數,看看以下的範例。
var count; var message=""; for(count=1;count<=10;count++){ var result=count*2; message+=result+" "; } System.inform(message);
(k ゚∀゚)<但留意for迴圈裡宣告的變數只能迴圈裡使用,當一離開了迴圈,這變數就不存在,這意味著迴圈裡宣告的變數無法在迴圈外面使用,所以迴圈裡宣告的變數只用來進行迴圈裡的運算。
(k ゚∀゚)<除此之外,我們甚至可以在初始化的部分宣告變數,看看以下的範例。
var message=""; for(var count=1;count<=10;count++){ message+=count+" "; } System.inform(message);
既然在for迴圈裡宣告,是不是也代表一離開了迴圈,這變數就不存在?>( ゚ω゚ s)
(k ゚∀゚)<是的,所以若果之後需要用到這變數的話,就不應該在迴圈裡宣告。
我有問題,若果初始化、條件式和更新這三部分缺了一兩個,可不可以用for迴圈?>( ゚ω゚ s)
(k ゚∀゚)<可以的,如果沒有的話不寫它就可以,看看以下的範例(請按住Ctrl + Alt + F12數秒,吉里吉里會強制終止)。
for(;;){ System.inform("這就是無窮迴圈"); }
(k ゚∀゚)<在上述的範例裡,這個for迴圈並沒有初始化、條件式和更新這三部分,由於沒有條件式來離開迴圈,所以這亦是無窮迴圈。
(k ゚∀゚)<當然,我們一般都不鼓勵這麼寫,我們使用for迴圈時通常都有初始化、條件式和更新這三部分,而且初始化和更新都不會太複雜。
(k ゚∀゚)<今次介紹到這裡,下次再見。
沒有留言:
發佈留言