开发者社区> 问答> 正文

Ruby format 保留的两位小数,是五舍六入?

使用format('%.2f', 4.565)保留两位小数跟4.565.round(2).to_s的结果不一样

format('%.2f', 4.565) => 4.56 format('%.2f', 4.566) => 4.57

4.565.round(2) => 4.57 4.566.round(2) => 4.57

展开
收起
黄一刀 2020-01-08 15:31:00 4144 0
1 条回答
写回答
取消 提交回答
  • 四舍五入在大量的数据处理之后会导致结果偏大,format 有可能是使用的银行舍入法,四舍六入,五看上一位,奇进偶不进。 4.565 的第二位是偶数,所以不进 1,4.575 的结果的 format 的结果就是 4.58。

    2020-01-08 15:31:21
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载