У овом примеру ћемо научити да израчунамо време извршавања нормалних метода и рекурзивних метода у Јави.
Да бисте разумели овај пример, требало би да имате знање о следећим темама програмирања Јава:
- Јава методе
- Јава Рецурсион
Пример 1: Јава програм за израчунавање времена извршења методе
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()
Метод враћа тренутну вредност покренут ЈВМ у наносекунди.
Пример 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()
.