我有以下内容:
text_counter = 0
MAXTEXT_COUNTER = 10
puts "hello, this will start"
loop do
puts "hello"
text_counter += 1
sleep(2)
if text_counter >= MAXTEXT_COUNTER
break
end
end
sleep(7200)
print "ended test"
break
发生后,如何让它从顶部重新开始?
我现在以为我可以将此循环嵌套在until
循环中,条件为text_counter == 1000
。这会破裂,然后再睡2个小时,然后重新开始直到达到1000个。
答案 0 :(得分:0)
您正在寻找下一步
它的功能类似于break
,但将控制权返回到循环的顶部。它非常适合创建平坦的控制流程。
例如
0.upto(100) do |i|
if i % 7 == 0
puts "#{i} is a multiple of 7"
next
end
puts i
end
答案 1 :(得分:0)
有一个retry
keyword从顶部重复循环,正如你所问的那样。
或者您可以将循环包装到方法中并不断调用该方法。