gpt4 book ai didi

java - 向下舍入到最接近的小数? BigDecimal 与替代形式

转载 作者:行者123 更新时间:2023-12-01 16:44:05 25 4
gpt4 key购买 nike

我有以下公式和代码:

我尝试了 Math.Floor 和其他方法,但没有得到预期的结果

double netPay = grossPay - totalDeduction;

System.out.printf("Net Pay: $%.2f", (netPay));

想法是按如下方式获取数字:

46.225

四舍五入为46.22

而不是 46.23

最佳答案

正如评论者所说:出于财务目的,请使用 BigDecimal。

除此之外:

double netPayCents = Math.floor(netPay * 100);
netPay = netPayCents / 100d;

为什么使用 BigDecimal?

浮点值(包括 double 值)可以非常精确,但在尝试绝对精确时会出现问题。在大多数数学运算之后,它们总是要进行舍入。

有关更多详细信息,请参阅此线程:Double vs. BigDecimal?

关于java - 向下舍入到最接近的小数? BigDecimal 与替代形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56214891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com