string.to_f精度问题,当值落后两个零时

时间:2014-06-26 10:03:52

标签: ruby

我收到输入字符串"400.00",需要显示400.00

预期的float_value 400.00

我使用to_f执行此任务,因为to_i将仅返回400。代码是

x="400.00"
float_value=x.to_f

但是在这种情况下,我得到的输出为400.0,这对我的情况是不可接受的。

当前的float_value 400.0

两者都是平等的,没有区别,但它不是出于任何计算目的,而是用于其他一些显示目的。

1 个答案:

答案 0 :(得分:2)

使用sprintf进行格式化:

sprintf("%.2f", 400)
#=> "400.00"