在Ruby中,我刚刚注意到:
puts true and false
返回true
,而puts (true and false)
和puts false and true
都返回false
。
这种行为背后的逻辑/原因是什么?
因为puts
绑定力强于and
:你的代码等于
(puts true) and false
true
#=> nil
您可以在文档中检查运算符优先级。
要获得您可以使用的内容,&&
的优先级高于and
:
puts true && false
false
#=> nil