Ruby-初学者遇到了未知的语法

时间:2015-12-18 12:17:57

标签: ruby

尝试学习Ruby我遇到了这种语法......任何人都能解释一下它的含义吗?

a = nil if b.nonzero?
  

非零? :如果num不为零则返回self,否则返回nil。

因此不会返回布尔值

1 个答案:

答案 0 :(得分:4)

ruby​​中的值是真实的和虚假的。也就是说,如果值不是nil或false,则为true。因此,如果您有一个返回1的函数,您可以在布尔表达式some_function && true中使用它来解析为真。

同样,如果它返回nilsome_function && true将返回false。

这里有详细而深入的解释:https://gist.github.com/jfarmer/2647362