Ruby redo/retry語句
Ruby redo
語句用於重複循環的當前迭代。 redo
語句在沒有訪問循環的條件的情況下進行。
redo
語句在一個循環中使用。
語法:
redo
代碼示例:
#!/usr/bin/ruby
array=[1,2,3,4,5]
array.each do |i|
puts i
i+=1
redo if i==3
end#輸出:1 2 3 3 4 5
將上面代碼保存到文件: redo-statment.rb 中,執行上面代碼,得到以下結果 -
F:\worksp\ruby>ruby redo-statment.rb
1
2
3
3
4
5
F:\worksp\ruby>
Ruby retry語句
Ruby retry
語句用於從一開始重複整個循環迭代。
retry
語句在循環中使用。
語法:
retry
示例代碼:
#!/usr/bin/ruby
n = 0
begin
puts 'Trying to do something?'
raise 'oops'
rescue => ex
puts ex
n += 1
retry if n < 3
end
puts "Ok, I give up"
將上面代碼保存到文件: retry-statment.rb 中,執行上面代碼,得到以下結果 -
F:\worksp\ruby>ruby retry-statment.rb
Trying to do something?
oops
Trying to do something?
oops
Trying to do something?
oops
Ok, I give up
F:\worksp\ruby>