gpt4 book ai didi

java - 将字符串转换为 float 而不进行四舍五入java

转载 作者:行者123 更新时间:2023-12-01 06:40:35 24 4
gpt4 key购买 nike

我想转换从数据库中以字符串形式获取的经度和纬度。该字符串是正确的,当我尝试将其转换为 double 时,它也是正确的。但是,当我将 double 值或字符串值(我都尝试过)转换为浮点值时,最后一个小数会四舍五入。

字符串或 double 值的值为 59.858139转换为 float 为 59.85814

我已经尝试了一切,这是一个令人绝望的例子:)

private float ConvertToFloat(double d)
{
float f = 00.000000f;
f = (float) d;
return f;
}

最佳答案

您知道 double 比 float 具有更高的精度,而且 float 会四舍五入,对吗?这是预期的行为。在这种情况下,将 double 型转换为 float 是没有意义的。

这里有一些东西可以让您朝着正确的方向思考......

    Double.doubleToRawLongBits(long value);
Float.intBitsToFloat(int bits);

double 不能放入 int 中,而必须放入 long 中。它的大小确实是原来的两倍,即使用字符串来调解位在这里也没有任何作用。

关于java - 将字符串转换为 float 而不进行四舍五入java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11881291/

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