我一直在寻找 Ruby 中类似 Python 的 while / else 结构的东西来改进我的代码。
这意味着执行循环,如果循环中的条件任何时候都不为真,则返回 else 语句中的值。
在红宝石中,我可以这样做:
if @items.empty?
"Empty"
else
@items.each do |item|
item
end
end
那么有没有办法改善这一点呢?
先感谢您。
请记住,迭代器块会返回您放入其中的内容,可以对其进行测试以供进一步使用。
if arr.each do |item|
item.some_action(some_arg)
end.empty?
else_condition_here
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)