Berechnung der abgelaufenen/Ausführungszeit in Java

So berechnen Sie die verstrichene / ausgeführte Zeit in Java

In Java können Sie die verstrichene Zeit in Java auf folgende Weise messen.

1. System.nanoTime()

Dies ist die empfohlene Lösung zum Messen der verstrichenen Zeit in Java.

ExecutionTime1.java

package com.example.time;

import java.util.concurrent.TimeUnit;

public class ExecutionTime1 {

    public static void main(String[] args) throws InterruptedException {

        //start
        long lStartTime = System.nanoTime();

        //task
        calculation();

        //end
        long lEndTime = System.nanoTime();

        //time elapsed
        long output = lEndTime - lStartTime;

        System.out.println("Elapsed time in milliseconds: " + output / 1000000);

    }

    private static void calculation() throws InterruptedException {

        //Sleep 2 seconds
        TimeUnit.SECONDS.sleep(2);

    }
}

Die Ausgabe kann variieren.

2004

2. System.currentTimeMillis()

ExecutionTime2.java

package com.example.time;

import java.util.concurrent.TimeUnit;

public class ExecutionTime2 {

    public static void main(String[] args) throws InterruptedException {

        long lStartTime = System.currentTimeMillis();

        calculation();

        long lEndTime = System.currentTimeMillis();

        long output = lEndTime - lStartTime;

        System.out.println("Elapsed time in milliseconds: " + output);

    }

    private static void calculation() throws InterruptedException {

        //Sleep 2 seconds
        TimeUnit.SECONDS.sleep(2);

    }
}

Die Ausgabe kann variieren.

2006

3. Instant.now().toEpochMilli()

In Java 8 können Sie die neuenjava.time.Instant ausprobieren

ExecutionTime3.java

package com.example.time;

import java.time.Instant;
import java.util.concurrent.TimeUnit;

public class ExecutionTime3 {

    public static void main(String[] args) throws InterruptedException {

        long lStartTime = Instant.now().toEpochMilli();

        calculation();

        long lEndTime = Instant.now().toEpochMilli();

        long output = lEndTime - lStartTime;

        System.out.println("Elapsed time in milliseconds: " + output);

    }

    private static void calculation() throws InterruptedException {

        //Sleep 2 seconds
        TimeUnit.SECONDS.sleep(2);

    }
}

Die Ausgabe kann variieren.

2006

4. Date (). GetTime ()

ExecutionTime4.java

package com.example.time;

import java.util.Date;
import java.util.concurrent.TimeUnit;

public class ExecutionTime4 {

    public static void main(String[] args) throws InterruptedException {

        long lStartTime = new Date().getTime();

        calculation();

        long lEndTime = new Date().getTime();

        long output = lEndTime - lStartTime;

        System.out.println("Elapsed time in milliseconds: " + output);

    }

    private static void calculation() throws InterruptedException {

        //Sleep 2 seconds
        TimeUnit.SECONDS.sleep(2);

    }
}

Die Ausgabe kann variieren.

2007