gpt4 book ai didi

java - 将数字四舍五入到 n 位小数使用格式显示不同的结果

转载 作者:行者123 更新时间:2023-12-02 09:08:52 24 4
gpt4 key购买 nike

当我使用格式获取舍入值时

".1f".format(0.55)

在某些设备中得到结果,某些三星 android 6.0

0.5

其他设备得到结果

0.6

如果值为 0.56结果是一样的

0.6

这是一个错误,所以我用它替换

val scale = 10.0.pow(2.0)
return ((round(0.55 * scale) / scale).toFloat())

最佳答案

您测试的所有设备都使用相同的区域设置吗?

您可以使用具有显式舍入模式的 NumberFormat 类来确保相同的舍入规则:

NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(1);
nf.setRoundingMode(RoundingMode.HALF_UP); //rounding rules

nf.format(0.55d);

关于java - 将数字四舍五入到 n 位小数使用格式显示不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59576254/

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