Programma Java per calcolare il tempo di esecuzione dei metodi

In questo esempio, impareremo a calcolare il tempo di esecuzione di metodi normali e metodi ricorsivi in ​​Java.

Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione Java:

  • Metodi Java
  • Ricorsione Java

Esempio 1: programma Java per calcolare il tempo di esecuzione del metodo

 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"); ) )

Produzione

 Tempo di esecuzione del metodo di calcolo: Tempo di esecuzione: 656100 nanosecondi

Nell'esempio precedente, abbiamo creato un metodo denominato display(). Il metodo stampa un'istruzione sulla console. Il programma calcola il tempo di esecuzione del metodo display().

Qui abbiamo utilizzato il metodo nanoTime()della Systemclasse. Il nanoTime()metodo restituisce il valore corrente della JVM in esecuzione in nanosecondi.

Esempio 2: calcola il tempo di esecuzione del metodo ricorsivo

 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"); ) )

Produzione

 Il tempo di esecuzione del metodo ricorsivo è 18600 nanosecondi

Nell'esempio precedente, stiamo calcolando il tempo di esecuzione del metodo ricorsivo denominato factorial().

Articoli interessanti...