【发布时间】:2013-10-08 21:32:07
【问题描述】:
有人可以向我解释一下以下两行代码的区别吗?
puts false or true or false or false or false
我不明白为什么该行的执行结果假设与以下不同:
puts false || true || false || false || false
如果有人能向我解释一下,我将不胜感激。
【问题讨论】:
有人可以向我解释一下以下两行代码的区别吗?
puts false or true or false or false or false
我不明白为什么该行的执行结果假设与以下不同:
puts false || true || false || false || false
如果有人能向我解释一下,我将不胜感激。
【问题讨论】:
Ruby 从 Perl 继承了一些控制流。所以在 Ruby 中,and 和 or 用于控制流,&& 和 || 是布尔运算符。这也意味着and 和or 的优先级高于&& 和||
例如:
and 的用法如下:
(true) and puts `true`
相当于
if true then
puts "true"
end
和&& 应该像这样使用:
true && false
这是false。
【讨论】:
p false or true #=> false => same as (p false) or true
p false || true #=> true => same as p (false or true)
【讨论】: