为了账号安全,请及时绑定邮箱和手机立即绑定

Java:包含所有十进制值的脚本

Java:包含所有十进制值的脚本

慕仙森 2023-11-01 16:58:51
我有一些java,它将价格乘以100,以使价格成为整数。但是在下面的示例中,28197.22 * 100返回2819700而不是2819722代码oExtendedLineCost = String.valueOf((long)(Double.valueOf(iInvoiceAmount.trim()).doubleValue()*100.0+0.5));
查看完整描述

1 回答

?
至尊宝的传说

TA贡献1789条经验 获得超10个赞

我认为你的括号顺序不对。而且,看起来您正在尝试在截断为整数之前进行一些舍入。


有时,拆行以查看括号所在的位置会有所帮助:


oExtendedLineCost =

String.valueOf(

               (long)(

                      (

                       Double.valueOf(

                                      iInvoiceAmount.trim()

                                     )*100.0+0.5

                      )

                     )

              );

看起来您正在尝试进行一些“银行家四舍五入”,其中 1 美元 > 0.5 的小数部分向上舍入,但我不确定转换为多头是否会像您期望的那样四舍五入。

查看完整回答
反对 回复 2023-11-01
  • 1 回答
  • 0 关注
  • 54 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信