10
我找不到任何有用的资源在线,打破了Ruby的不同流量控制选项。红宝石流量控制
让我们假设我在一个方法遍历数组中:
def a_method
things.each do |t|
# control options?
end
end
我有什么不同的流量控制选择这里?他们有什么不同?
- 重试
- 回报
- 休息
- 下一个
- 重做
我找不到任何有用的资源在线,打破了Ruby的不同流量控制选项。红宝石流量控制
让我们假设我在一个方法遍历数组中:
def a_method
things.each do |t|
# control options?
end
end
我有什么不同的流量控制选择这里?他们有什么不同?
retry
可以救援块内使用,导致病情后跳回开始块该例外已被纠正。在块内部,它具有跳转到产生方法开始的效果。因此在每个内部这意味着重试将跳转到循环的开始。
return
将从其内部的方法返回 - 在这种情况下从a_method
。
break
将返回从屈服方法 - 在这种情况下,从each
(这将是从a_method
返回如果某物的每个块的结束和a_method
端部之间发生的不同)。
next
将从该块返回并因此跳转到things
中的下一项。
redo
将跳转到块的开始,因此重复当前的迭代。