Java - System.nanoTimeを秒に変換する方法

Java – System.nanoTimeを秒に変換する方法

nanoTimeを1_000_000_000で除算するか、TimeUnit.SECONDS.convertを使用して変換することができます。

Note
1秒= 1_000_000_000ナノ秒

JavaExample.java

package com.example;

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