有人可以向我解释以下两行代码的区别吗?
puts false or true or false or false or false
我不明白为什么执行该行的结果应该与以下情况不同:
puts false || true || false || false || false
如果有人能向我解释这一点,我将不胜感激。
p false or true #=> false => same as (p false) or true
p false || true #=> true => same as p (false or true)
Ruby 从 Perl 继承了一些控制流。所以在 Ruby 中,and
和 or
用于控制流,&&
和 ||
是布尔运算符。这也意味着and
和or
的优先级高于&&
和||
前任:
and
的使用方式如下:
(true) and puts `true`
相当于
if true then
puts "true"
end
&&
应该像这样使用:
true && false
这是false
.