Мы можем просто разделить нанотечение на 1_000_000_000
, или используйте единицу времени.СЕКУНДЫ.преобразовать
чтобы преобразовать его.
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/”