Ruby while
迴圈用於多次迭代程式。 如果程式的疊代次數不固定,則使用while
迴圈。Ruby while迴圈在條件為真時執行條件。當條件變為false
時,while
迴圈停止迴圈執行。
語法:
while conditional [do]
code
end
while迴圈流程示意圖如下 -
程式碼範例:
#!/usr/bin/ruby
puts "Enter a value:"
x = gets.chomp.to_i
while x >= 0
puts x
x -=1
end
將上面程式碼儲存到檔案: while-loop.rb 中,執行上面程式碼,得到以下結果 -
F:\worksp\ruby>ruby while-loop.rb
Enter a value:
8
8
7
6
5
4
3
2
1
0
F:\worksp\ruby>
Ruby do...while
迴圈遍歷程式的一部分幾次。 它與while迴圈語法非常相似,唯一的區別是do...while
迴圈將至少執行一次。 這是因為在while迴圈中,條件寫在程式碼的末尾。
語法:
loop do
#code to be executed
break if booleanExpression
end
程式碼範例:
#!/usr/bin/ruby
loop do
puts "Checking for answer: "
answer = gets.chomp
if answer == '5'
puts "yes, I quit!"
break
end
end
將上面程式碼儲存到檔案: do-while-loop.rb 中,執行上面程式碼,得到以下結果 -
F:\worksp\ruby>ruby do-while-loop.rb
Checking for answer:
1
Checking for answer:
2
Checking for answer:
3
Checking for answer:
4
Checking for answer:
5
yes, I quit!
F:\worksp\ruby>