Java:要浮动的毫秒时间戳字符串

发布于 2024-11-02 06:37:50 字数 154 浏览 4 评论 0原文

我有这个字符串:1303317717.65384 - 这是一个带有毫秒(65384)的UNIX时间戳(1303317717)。

在Java中如何将其转换为浮点型?发出时我总是得到 1.06172723E9,但我只想它是 1303317717.65384。

谢谢!

I have this String: 1303317717.65384 - It's a UNIX timestamp (1303317717) with milliseconds (65384).

How can I convert this to a float in Java? I am always getting 1.06172723E9 when giving it out, but I just want it to be 1303317717.65384.

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

若有似无的小暗淡 2024-11-09 06:37:50

不可能在浮点变量中以足够的精度显示这一点 - 您必须使用双精度。

演示:

System.out.println(String.format("%f", Float.parseFloat("1303317717.65384")));
System.out.println(String.format("%f", Double.parseDouble("1303317717.65384")));

产量

1303317760.000000
1303317717.653840

It is not possible to display this with enough precision one within a float variable - you have to use a double.

Demo:

System.out.println(String.format("%f", Float.parseFloat("1303317717.65384")));
System.out.println(String.format("%f", Double.parseDouble("1303317717.65384")));

yields

1303317760.000000
1303317717.653840
骑趴 2024-11-09 06:37:50

Java 中的浮点数只有大约六位数的精度。你需要一个双人间。

如果它是字符串形式,那么您可以使用Double.parseDouble(String s)。

Floats in Java only have about six digits of precision. You need a double.

If it's in the form of a String, then you can use Double.parseDouble(String s).

蓝眸 2024-11-09 06:37:50

浮点数精度不够。使用双倍代替。

A float has insufficient precision. Use a double instead.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文