1
我写了下面的Ruby代码:Ruby中是否存在“yield break”的等价物?
def myItems
if @item1
yield @item1
end
if @item2
yield @item2
end
end
现在我试着使用:
myItems.each do |item|
puts item
end
然而,当两个@物品1和@ ITEM2是零,我得到的错误:
Error: #<NoMethodError: undefined method `each' for nil:NilClass>.
我希望在C#中有一个等价的“yield break”来防止这种情况发生。有谁知道这是如何在Ruby中的作品?
如果你能澄清在什么情况下你想“休息”,我可以编辑答案,以进一步帮助你满足你的确切需求。 – Phrogz
我是Ruby的初学者,所以我将Array与Enumerator混淆。所以这是一个愚蠢的问题,但谢谢你的杰出答案:) – Aristoteles