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().








