如果條件成立則進入迴圈,執行迴圈內的動作。
每完成一次迴圈內動作,則在重投做一次原本的條件判斷,
一直做到條件不成立後,才跳脫迴圈內的模式。
for 迴圈主要是以for…in為主。
例如:
languages = ["English", "Chinese", "Japanese"]
for language in languages
puts language
end
藉由for迴圈將language做languages陣列裡面所有的元素,最後會印出所有的languages。
while迴圈主要是當給定一個條件,迴圈開始做,一直做到條件不成立為止。
例如:
x=1
while x < 5
puts "No.#{x}”
x += 1
end
x 現在為1,當x < 5 時要印出No.幾。
要注意如果不藉由x += 1,這樣x永遠都會是1,
這樣這個迴圈永遠無法結束,所以執行迴圈時,要注意不要困在迴圈裡面。
until主要是做迴圈,直到某個條件成立就停止,
while是做迴圈,直到某個條件不成立就停止。
所以until 即為while not,而while 即是until not。
而上面的例子可以改成:
x=1
until not x < 5
puts "No.#{x}”
x += 1
end
若要將這個程式改為以until為主,則條件句要改為 x > 4。
loop迴圈主要以 loop do 開頭而以break作為結束。
break當條件符合之後,就不會再做了。
例如:
i = 1
loop do
puts "No.#{i}"
i += 1
break if i > 3
end
而當 i 大於 3 就不會再做。
對於流程控制,我們會藉由這些迴圈控制方法來操控,
除此之外,之後還會藉由方式以及迭代的方法來做流程控制。
我們會藉由在引號內加入 #{變數}來讓變數裡面的值做替換,雖然一開始我沒有很習慣,所以常常寫錯,
但藉由不斷的練習,來做改善,希望越來越好。