为什么nil.to_s
return ""
,但nil.inspect
返回"nil"
(显然.inspect
使用该.to_s
方法时)
问问题
7183 次
2 回答
24
Object 类的“inspect”方法应该返回对象的可读版本。
的人类可读版本nil
是“nil”而不是“”(这是字符串的人类可读版本""
)。
这就是为什么nil.inspect
应该返回“nil”,而nil.to_s
返回“”以便按照通常的预期"a string" + nil
返回(例如在其他语言中)。"a string"
于 2012-09-12T19:56:05.887 回答
6
请参阅 上的文档NilClass.inspect
。它声明它将返回"nil"
并且不保证与to_s
.
于 2012-09-12T19:53:31.737 回答