Ruby和nil对象
我是ruby world的新手,目前正在学习它。我在谷歌上读过关于Ruby和nil对象,ruby,Ruby,我是ruby world的新手,目前正在学习它。我在谷歌上读过关于nilobject的文章,但还是不知道它是什么 有人能给我详细解释一下或者分享一些链接以便进一步阅读吗?nil是NilClass类的唯一实例。它没有任何特殊行为(除了它在布尔上下文中被解释为false(例如,在if条件下),正如Andrew Grimm所指出的那样)。nil的目的是表示“无结果” 例如,如果没有满足条件的项,则应该查找满足特定条件的项的方法将返回nil。或者访问少于i元素的数组的i第th个元素将返回nil 它的用途
nil
object的文章,但还是不知道它是什么
有人能给我详细解释一下或者分享一些链接以便进一步阅读吗?
nil
是NilClass
类的唯一实例。它没有任何特殊行为(除了它在布尔上下文中被解释为false(例如,在if
条件下),正如Andrew Grimm所指出的那样)。nil
的目的是表示“无结果”
例如,如果没有满足条件的项,则应该查找满足特定条件的项的方法将返回nil
。或者访问少于i
元素的数组的i
第th个元素将返回nil
它的用途与其他语言中的空指针类似,只是您可以在其上调用
对象
方法(即在每个对象上定义的方法),而不会导致异常。将nil视为空。但是由于Ruby中的所有东西都是对象,所以nil是单例类NilClass的唯一实例。然后,nil对方法作出响应,可以进行修补。事实上,你可以对任何其他类做任何你能做的事情(考虑到它是单态的)。nil的一个有点特殊的行为是它是除了false
之外唯一缺乏真实性的对象。