我想要舍入到两个小数点,所以我自然会使用:
Double number = Math.round(number*100.0)/100.0
但我最终得到了很长的输出,有很多小数点。所以我尝试了Math.round()的不同输入,类似于我需要使用的输入,并找到了
Math.round(8.3391700279483738E17) = 833917002794837376
Math.round(8.3391700279483738E17 * 100) / 100.0 = 9.223372036854776E16
这对任何人都有意义吗?
答案 0 :(得分:2)
您的代码似乎是正确的
Math.round(8.3391700279483738E17)= 833917002794837376
有意义,因为8.3391700279483738E17在数学上意味着8.3391700279483738 * 10 ^ 17或
8339170027948373800而非十进制数字。边际差异较小是由于Delta误差造成的。