Ruby Bigdecimal以固定数字舍入

时间:2012-10-25 20:18:46

标签: ruby rounding

我想在ruby中围绕BigDecimal。我知道我可以使用圆函数但是

圆函数给出

(3.2).round(2) =>  3.2

我想要

(3.2).round(2) =>  3.20
(3.20).round(2) =>  3.20
(3).round(2) =>  3.00
(3.578).round(2) =>  3.58

我总是希望有2个小数位,3.20不是3.2

任何想法如何完成这项工作?

2 个答案:

答案 0 :(得分:17)

试试这个:

'%.2f' % 3.2
=> "3.20"

'%.2f' % 3
=> "3.00"

'%.2f' % 3.578
=> "3.58"

etc.

答案 1 :(得分:5)

例如,与Java's BigDecimal不同,Ruby's BigDecimal不具有每实例精度。 Ruby BigDecimal中3.2和3.20之间的区别只是格式化。