Програма 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().

Цікаві статті...