如何精确地将毫秒转换为秒

2022-09-01 10:12:16

我想以尽可能高的精度将毫秒转换为秒(例如1500ms到1.5s,或500ms到0.5s)。

Double.parseDouble(500 / 1000 + "." + 500 % 1000);这不是最好的方法:我正在寻找一种方法从除法操作中获取剩余部分,这样我就可以简单地添加剩余部分。


答案 1

当然,您只需要:

double seconds = milliseconds / 1000.0;

没有必要手动分别做这两个部分 - 你只需要浮点算术,使用(作为文字)强制。(我假设你的值是某种形式的整数。1000.0doublemilliseconds

请注意,与往常一样,您可能无法准确表示结果。如果要将 100 毫秒精确表示为 0.1 秒,请考虑使用。(鉴于这是一个物理量,并且100ms首先并不精确,a可能是合适的,但是......)doubleBigDecimaldouble


答案 2

你为什么不干脆试试

System.out.println(1500/1000.0);
System.out.println(500/1000.0);

推荐