小编boa*_*oar的帖子

NoMethodError:nil:NilClass的未定义方法“ to_d”

NoMethodError: undefined method `to_d' for nil:NilClass 
Run Code Online (Sandbox Code Playgroud)

这似乎与其他“ to_”不一致

例如,使用Rails 3.2.14和ruby 1.9.3p362:

1.9.3p362 :055 > nil.to_f
 => 0.0 
1.9.3p362 :056 > nil.to_d
NoMethodError: undefined method `to_d' for nil:NilClass
1.9.3p362 :057 > nil.to_s
 => "" 
1.9.3p362 :058 > nil.to_i
 => 0 
Run Code Online (Sandbox Code Playgroud)

这意味着无论何时我可能想转换为大十进制数时,我首先都必须确保该值不为nil并为它分配一个0值。 ?我应该认为这是一个错误吗?

ruby ruby-on-rails type-conversion

5
推荐指数
1
解决办法
1729
查看次数

标签 统计

ruby ×1

ruby-on-rails ×1

type-conversion ×1