我们可以将nanoTime除以1_000_000_000
,或使用TimeUnit.SECONDS.convert
进行转换。
注意
1秒= 1_000_000_000纳秒
JavaExample.java
package com.mkyong;
import java.util.concurrent.TimeUnit;
public class JavaExample {
public static void main(String[] args) throws InterruptedException {
long start = System.nanoTime();
Thread.sleep(5000);
long end = System.nanoTime();
long elapsedTime = end - start;
System.out.println(elapsedTime);
// 1 second = 1_000_000_000 nano seconds
double elapsedTimeInSecond = (double) elapsedTime / 1_000_000_000;
System.out.println(elapsedTimeInSecond + " seconds");
// TimeUnit
long convert = TimeUnit.SECONDS.convert(elapsedTime, TimeUnit.NANOSECONDS);
System.out.println(convert + " seconds");
}
}
输出量
5000353564
5.000353564 seconds
5 seconds
参考文献
翻译自: https://mkyong.com/java/java-how-to-convert-system-nanotime-to-seconds/