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

Kei*_*yer 27 java precision milliseconds divide

我希望尽可能精确地将毫秒转换为秒(例如1500ms至1.5s,或500ms至0.5s).

Double.parseDouble(500 / 1000 + "." + 500 % 1000); 这不是最好的方法:我正在寻找一种方法来从除法运算中得到余数,所以我可以简单地添加余数.

Jon*_*eet 71

当然你只需要:

double seconds = milliseconds / 1000.0;
Run Code Online (Sandbox Code Playgroud)

没有必要单独手动完成这两个部分 - 您只需要浮点运算,使用1000.0(作为double文字)强制.(我假设你的milliseconds值是某种形式的整数.)

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


Ank*_*kur 5

你为什么不试试呢?

System.out.println(1500/1000.0);
System.out.println(500/1000.0);
Run Code Online (Sandbox Code Playgroud)