如何精确地将毫秒转换为秒
2022-09-01 10:12:16
我想以尽可能高的精度将毫秒转换为秒(例如1500ms到1.5s,或500ms到0.5s)。
Double.parseDouble(500 / 1000 + "." + 500 % 1000);
这不是最好的方法:我正在寻找一种方法从除法操作中获取剩余部分,这样我就可以简单地添加剩余部分。
我想以尽可能高的精度将毫秒转换为秒(例如1500ms到1.5s,或500ms到0.5s)。
Double.parseDouble(500 / 1000 + "." + 500 % 1000);
这不是最好的方法:我正在寻找一种方法从除法操作中获取剩余部分,这样我就可以简单地添加剩余部分。
当然,您只需要:
double seconds = milliseconds / 1000.0;
没有必要手动分别做这两个部分 - 你只需要浮点算术,使用(作为文字)强制。(我假设你的值是某种形式的整数。1000.0
double
milliseconds
请注意,与往常一样,您可能无法准确表示结果。如果要将 100 毫秒精确表示为 0.1 秒,请考虑使用。(鉴于这是一个物理量,并且100ms首先并不精确,a可能是合适的,但是......)double
BigDecimal
double
你为什么不干脆试试
System.out.println(1500/1000.0);
System.out.println(500/1000.0);