Програма Java за изчисляване на времето за изпълнение на методите

В този пример ще се научим да изчисляваме времето за изпълнение на нормални методи и рекурсивни методи в Java.

За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Java:

  • Java методи
  • Java рекурсия

Пример 1: Програма Java за изчисляване на времето за изпълнение на метода

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

Изход

 Време за изпълнение на метода за изчисляване: Време за изпълнение: 656100 наносекунди

В горния пример създадохме метод с име display(). Методът отпечатва изявление в конзолата. Програмата изчислява времето за изпълнение на метода display().

Тук използвахме метода nanoTime()на Systemкласа. В nanoTime()метода връща текущата стойност на текущата JVM в наносекунди.

Пример 2: Изчислете времето за изпълнение на рекурсивния метод

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

Изход

 Времето за изпълнение на рекурсивния метод е 18600 наносекунди

В горния пример изчисляваме времето за изпълнение на именувания рекурсивен метод factorial().

Интересни статии...