gpt4 book ai didi

java - double 移动小数点

转载 作者:行者123 更新时间:2023-12-01 07:29:28 31 4
gpt4 key购买 nike

我有这个代码:

Long dval = new Long((new Date()).getTime());
System.out.println("ogval:"+dval);
Double dd = (double)dval;
System.out.println("dval:"+dd);

这是输出:

ogval:1381490769636
dval:1.381490769636E12

当我将值转换为 Double 时,它​​会添加一个小数点。我可以进行类型转换并按原样获取 double 值吗?

期望的输出是:

ogval:1381490769636
dval:1381490769636

我有一个函数,其参数仅接受 double 值。当我尝试传递时间戳时,它会传递方法内的十进制值。我无法编辑该函数,因为它是某个包的内置函数。

最佳答案

简单的答案是否定的。

浮点类型可以包含整数,最大可达某个任意值,具体取决于 float 的存储方式。如果数字太大,则会转换为十进制。

如果您需要使用大整数值,请使用 BigInteger 类。

检查这些缺陷的好工具是 float converter 。在浮点转换器中尝试123456789,它不会被准确存储。

关于java - double 移动小数点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19316055/

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