Ruby redo
語句用于重復(fù)循環(huán)的當(dāng)前迭代。 redo
語句在沒有訪問循環(huán)的條件的情況下進(jìn)行。
redo
語句在一個(gè)循環(huán)中使用。
語法:
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 中,執(zhí)行上面代碼,得到以下結(jié)果 -
F:\worksp\ruby>ruby redo-statment.rb
1
2
3
3
4
5
F:\worksp\ruby>
Ruby retry
語句用于從一開始重復(fù)整個(gè)循環(huán)迭代。
retry
語句在循環(huán)中使用。
語法:
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 中,執(zhí)行上面代碼,得到以下結(jié)果 -
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>