我有几段代码有几个分组的“或”条件,如下所示:
def some_method
first_var || second_var || false
end
如果有的话,避免这种情况的最佳方法是什么?我希望它保持紧凑和高效。我的猜测是,这已经是最好的了,但在脑海深处有一些东西一直在说一定有更好的方法。
最佳答案
如果你不想添加|| false
,但又不想返回nil
,可以这样做:
def some_method
!!(first_var || second_var)
end
这样,如果(first_var || second_var)
的返回值为nil
,将返回一个false
:
!!true
# => true
!!false
# => false
!!nil
# => false
关于Ruby:避免多个 "or"语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23368643/