ruby - 我有一个像 30.6355 这样代表钱的数值,如何四舍五入到小数点后两位?

标签 ruby decimal rounding

我有一个像 30.6355 这样代表钱的数值,如何四舍五入到小数点后两位?

最佳答案

在处理货币时不应使用doublefloat 类型:它们的小数位太多且偶尔会出现舍入错误。金钱可能会从这些漏洞中掉落,并且在错误发生后很难追查到错误。

在处理金钱时,使用固定的十进制类型。在 Ruby(和 Java)中,使用 BigDecimal。

关于ruby - 我有一个像 30.6355 这样代表钱的数值,如何四舍五入到小数点后两位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4130480/

相关文章:

ruby - 迭代 Ruby 中的无限序列

python - 如何查看数字是否以 .0 结尾

C# - (int)Math.Round((double)(3514 + 3515)/2) =3514?

.net - 谁能帮我获取 math.round() 以获得以下输出

ruby-on-rails - Ruby 从父类调用子方法

ruby Process.spawn stdout => 管道缓冲区大小限制

sql - 小数除以小数并得到零

c# - 从文本框计算十进制数

c++ - 不需要的舍入 C++

ruby - 返回空白页的最小 Capybara/Poltergeist 测试