我有三个变量,它们都可以是 nil:
to
cc
bcc
如何将 X
分配给 to/cc/bcc 中的任何一个,因为它们中的任何一个都可以为 nil(但不是所有三个)?做起来好像很难看
if to.nil? and cc.nil?
X = bcc
elsif ...
你做不到
X = to or cc or bcc
要么。
最佳答案
你可以这样做:
X = (to or cc or bcc)
或者这个:
X = to || cc || bcc
||
的优先级高于 =
、 或
— 更低,所以第一个例子没有括号就不起作用,X 只是无条件的分配给第一个变量。
关于ruby-on-rails - Ruby 中 nil 的高效开关盒?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6894373/