Ruby中nil值与NilClass类的介绍

在Ruby开发中,我们会遇到nil这个返回值,比如下面:

irb(main):001:0> print ("Hello,Ruby.\n")
Hello,Ruby.
=> nil
irb(main):002:0>

既然在Ruby中一切为对象,那么nil值也应该是对象,是属于哪个类呢?

irb(main):001:0> print "Hello,Ruby.\n"
Hello,Ruby.
=> nil
irb(main):002:0> nil.class
=> NilClass
irb(main):003:0>

nil是一个特殊的值,表示对象不存在。如果碰到false和nil ,则会认为是”假”,除此之外的都认为是”真”。

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/experience/rubye/1448.html

(1)
上一篇 2020年7月26日 15:36
下一篇 2020年7月26日 21:00

相关推荐

  • Ruby中的对象标识object_id

    对象标识(ID)用来判断对象的同一性。 通过object_id判断字符串对象与符号对象是不是同一个对象。字符串对象不是同一个对象,符号对象是同一个对象。

    Ruby经验 2020年7月30日
    07620
  • Ruby语言的单键(Singleton)方法的介绍

    Ruby中的核心类库和标准类库中的类和模块对于开发者是“开放的“,这是Ruby的关键特性之一,可以在运行时修改和扩展,可以用单键(Singleton)方法定义类方法或者专门为某个对象添加方法。之所以被称为单键方法,因为它只在单个对象上可用。 Math模块是Ruby核心类库的一部分,上述代码给Math模块添加了一个新方法…

    Ruby经验 2020年7月28日
    01590
  • MatZ谈Ruby中的块(Block)和闭包(Closure)

    本文为采访稿。 带块的循环 Bill Venners:Ruby支持块和闭包。什么是块和闭包,如何使用? 松本行弘(Yukihiro Matsumoto):块基本上是无名的函数(nameless functions)。您可能对lambda很熟悉,来自其他语言,例如Lisp或Python。基本上,您可以将无名函数传递给另一…

    Ruby经验 2020年7月30日
    09790

发表评论

登录后才能评论