如何舍入到小数点后两位?

Wil*_*iam 12 ruby rounding

我想要任何圆形的项目如下:

(5.101 * 100).round / 100.0
Run Code Online (Sandbox Code Playgroud)

要像这样输出:

5.10
Run Code Online (Sandbox Code Playgroud)

而不是这个:

5.1
Run Code Online (Sandbox Code Playgroud)

我如何在Ruby中执行此操作?

the*_*Man 16

有几种方法,但我赞成使用String的%(格式)运算符:

'%.2f' % [(5.101 * 100).round / 100.0] # => "5.10"
Run Code Online (Sandbox Code Playgroud)

内核的sprintf方法有各种标志和修饰符的文档.还有内核,printf但就像我说的那样,我会去%.


Pra*_*hra 9

我希望它会对你有所帮助.

2.0.0p195 :002 > (52.452158744).round(2)
=> 52.45 
2.0.0p195 :003 > (20.452158744).round(2)
=> 20.45 
2.0.0p195 :004 > (20.002555).round(2)
=> 20.0 
2.0.0p195 :005 > (20.012555).round(2)
=> 20.01 
Run Code Online (Sandbox Code Playgroud)

  • `(5.0).round(2)`舍入.它没有格式化.他们是不同的. (7认同)