从自身内部调用方法再次执行
ruby 中从自身内部调用方法重新运行的正确方法是什么 在下面的示例中,当 @dest_reenter 等于 yes 时,我希望 b_stage 方法再次执行
def b_stage
if @dest_reenter == 'yes'
@dest_reenter = nil
b_stage
end
end
What is the proper way in ruby to call a method from within itself to rerun
In the sample below when @dest_reenter is equal to yes I would want the b_stage method to execute again
def b_stage
if @dest_reenter == 'yes'
@dest_reenter = nil
b_stage
end
end
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这就是递归的方式,但使用这些实例变量并不是正确的方法。一个更好的例子是这样的:
如果你调用
b_stage(0)
,输出将是That is how you do recursion, but using those instance variables isn't the way to go. A better example would be something like this:
If you call
b_stage(0)
, the output will be使用单独的方法:
Use a separate method: