0

我想将 Ruby 中的 BigDecimal 转换为美分,这就是我所做的:

amount = BigDecimal('19.95')
#=> #<BigDecimal:7f80bc726b38,'0.1995E2',18(18)> 
amount_in_cents = amount*100
#=> #<BigDecimal:7f80bc794cc8,'0.1995E4',9(45)> 
amount_in_cents.to_f
#=> 1995.0
amount_in_cents.ceil
#=> 1995

所以ceil给了我正确的美分金额,我需要与支付提供商沟通的金额。目前我不能 100% 确定我在这里所做的是否正确。也许有人知道更好的方法?

4

1 回答 1

0

您也可以使用to_i,它可以更好地传达您的意图,除非您希望处理小数美分(在这种情况下,to_i似乎截断为零)。

于 2012-10-07T13:44:38.287 回答