格式化Java纳米时间

时间:2014-06-04 15:00:05

标签: java format

我记录了Java花费多长时间的持续时间。为此,我正在运行:

long startTime = System.nanoTime();
...
long duration = System.nanoTime() - startTime;

现在,我想花一段时间并以mm:ss.SSS的格式打印出来。我如何用Java做到这一点?

1 个答案:

答案 0 :(得分:-1)

只需将其转换为毫秒:

import java.util.concurrent.TimeUnit;
...
long duration_ms = TimeUnit.NANOSECONDS.toMilliseconds( duration )

然后DateFormat将按预期工作。

经过进一步反思,我的回答是不正确的。问题是System.currentTimeMillis()(和DateFormat)需要自纪元以来的毫秒数。上面的转换方法会将持续时间转换为毫秒,因此如果你有一个以纳秒为单位的初始值和自epoch以来的ms,你可以将它与一些数学一起使用,但System.nanoTime()没有定义为特别是相对于任何东西。 / p>