In diesem Beispiel lernen wir, die Ausführungszeit normaler und rekursiver Methoden in Java zu berechnen.
Um dieses Beispiel zu verstehen, sollten Sie die folgenden Java-Programmierthemen kennen:
- Java-Methoden
- Java-Rekursion
Beispiel 1: Java-Programm zur Berechnung der Ausführungszeit der Methode
class Main ( // create a method public void display() ( System.out.println("Calculating Method execution time:"); ) // main method public static void main(String() args) ( // create an object of the Main class Main obj = new Main(); // get the start time long start = System.nanoTime(); // call the method obj.display(); // get the end time long end = System.nanoTime(); // execution time long execution = end - start; System.out.println("Execution time: " + execution + " nanoseconds"); ) )
Ausgabe
Ausführungszeit der Berechnungsmethode: Ausführungszeit: 656100 Nanosekunden
Im obigen Beispiel haben wir eine Methode mit dem Namen erstellt display()
. Die Methode druckt eine Anweisung an die Konsole. Das Programm berechnet die Ausführungszeit der Methode display()
.
Hier haben wir die Methode nanoTime()
der System
Klasse verwendet. Die nanoTime()
Methode gibt den aktuellen Wert der laufenden JVM in Nanosekunden zurück.
Beispiel 2: Berechnen Sie die Ausführungszeit der rekursiven Methode
class Main ( // create a recursive method public int factorial( int n ) ( if (n != 0) // termination condition return n * factorial(n-1); // recursive call else return 1; ) // main method public static void main(String() args) ( // create object of Main class Main obj = new Main(); // get the start time long start = System.nanoTime(); // call the method obj.factorial(128); // get the end time long end = System.nanoTime(); // execution time in seconds long execution = (end - start); System.out.println("Execution time of Recursive Method is"); System.out.println(execution + " nanoseconds"); ) )
Ausgabe
Die Ausführungszeit der rekursiven Methode beträgt 18600 Nanosekunden
Im obigen Beispiel berechnen wir die Ausführungszeit der genannten rekursiven Methode factorial()
.