Program Java pentru a calcula timpul de execuție a metodelor

În acest exemplu, vom învăța să calculăm timpul de execuție a metodelor normale și a metodelor recursive în Java.

Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele despre următoarele subiecte de programare Java:

  • Metode Java
  • Recursiune Java

Exemplul 1: Program Java pentru a calcula timpul de execuție a metodei

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

Ieșire

 Timp de execuție a metodei de calcul: Timp de execuție: 656100 nanosecunde

În exemplul de mai sus, am creat o metodă numită display(). Metoda imprimă o instrucțiune pe consolă. Programul calculează timpul de execuție al metodei display().

Aici, am folosit metoda nanoTime()de Systemclasa. nanoTime()Metoda returnează valoarea curentă a JVM rulează în nanosecunde.

Exemplul 2: Calculați timpul de execuție al metodei recursive

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

Ieșire

 Timpul de execuție al metodei recursive este de 18600 nanosecunde

În exemplul de mai sus, calculăm timpul de execuție al metodei recursive numite factorial().

Articole interesante...