整数上的Ruby &&运算符
有没有人知道&&和||的含义 什么时候应用于Ruby中的整数?
以下是IRB中&&和||时的一些示例 适用于整数:
>> 1 && 2 => 2 >> 2 && 1 => 1 >> 15 && 20 => 20 >> 20 && 15 => 15 >> 0 && -1 => -1 >> -1 && -2 => -2 >> 1 || 2 => 1 >> 2 || 1 => 2
布尔运算符&&
, ||
, and
/ or
少数不是方法调用的语法糖,因此,在不同的类中没有不同的实现。
换句话说:它们对所有对象的行为完全相同 ,即它们对于Integer
s的行为与对String
, Hash
es, Float
s, Symbol
s和任何其他对象的行为相同。
a && b
如果a
是假的(并且在这种情况下根本不会评估b
),则计算结果为b
,否则计算结果为b
(并且只有那时才会被评估)
a || b
如果a
是真实的(并且在这种情况下根本不会评估b
),则评估为b
,否则评估为b
(然后才会评估)
nil
和false
都是假的,其他一切都是真实的,包括0,0.0, ''
, []
和{}
。