6

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.2ではなく3.20です

これを行う方法はありますか?

4

2 に答える 2

18

これを試して:

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

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

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

etc.
于 2012-10-25T20:24:30.763 に答える
5

たとえば、JavaのBigDecimalとは異なり、RubyのBigDecimalにはインスタンスごとの精度がありません。Ruby BigDecimalの3.2と3.20の違いは、フォーマットだけです。

于 2012-10-25T20:27:25.790 に答える