V tem primeru se bomo naučili izračunati čas izvajanja običajnih metod in rekurzivnih metod v Javi.
Če želite razumeti ta primer, morate poznati naslednje programske teme Java:
- Java metode
- Java rekurzija
Primer 1: Program Java za izračun časa izvajanja metode
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"); ) )
Izhod
Čas izvedbe metode izračuna: Čas izvedbe: 656100 nanosekund
V zgornjem primeru smo ustvarili metodo z imenom display()
. Metoda v konzolo natisne stavek. Program izračuna čas izvajanja metode display()
.
Pri tem smo uporabili metodo nanoTime()
tega System
razreda. nanoTime()
Metoda vrne trenutno vrednost teče JVM v nanosekund.
Primer 2: Izračunajte čas izvedbe rekurzivne metode
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"); ) )
Izhod
Čas izvajanja rekurzivne metode je 18600 nanosekund
V zgornjem primeru izračunamo čas izvedbe imenovane rekurzivne metode factorial()
.