gpt4 book ai didi

java - 将 float /小数点四舍五入到小数点后三位?

转载 作者:行者123 更新时间:2023-11-29 06:44:03 25 4
gpt4 key购买 nike

我知道有很多问题都在问这个问题,但我已经尝试了很多解决方案,但似乎没有一个能完全满足我的需要!

大多数解决方案都有效,但是在我的测试数据中我有 float:0.08095238095238096

如果我四舍五入到 4,我似乎得到了; 0.081 当我需要 0.0809 并且不舍入最后一个位置时。

此外,对于这种类型的数字,我最好使用 float 还是 double?

谢谢

最佳答案

您似乎想要四舍五入到小数点后四位,而不是四舍五入。

double d = 0.08095238095238096;
d = (long) (d * 10000) / 10000.0;

d = Math.floor(d * 10000) / 10000.0;

我假设你的意思是你想要 d = 0.0809 而不是 0.809。

也许您正在考虑 3 位有效数字,这是一个更难的问题。

最好使用 doubleBigDecimal 而不是 float 除非你有很好的理由。

顺便说一句:清楚地知道您想要什么是很有用的,否则将很难找到它。 ;)

关于java - 将 float /小数点四舍五入到小数点后三位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8093649/

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