2

可能重复:
obj.nil?与 obj == nil

现在通过 ruby​​ koans 工作,发现这个评论嵌入在一个 .rb 文件中:

    # THINK ABOUT IT:
#
# Is it better to use
#    obj.nil?
# or
#    obj == nil
# Why?

我从惯例知道答案是 obj.nil?但我不能告诉你为什么。有人有想法么?

4

1 回答 1

3

原因是覆盖#==方法比#nil?方法更常见。所以obj.nil?会更可靠地做它预期做的事情。

于 2012-10-03T04:12:51.147 回答