I det här exemplet lär vi oss att beräkna exekveringstiden för normala metoder och rekursiva metoder i Java.
För att förstå detta exempel bör du ha kunskap om följande Java-programmeringsämnen:
- Java-metoder
- Java-rekursion
Exempel 1: Java-program för att beräkna metodens exekveringstid
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"); ) )
Produktion
Beräkning av metodens exekveringstid: Exekveringstid: 656100 nanosekunder
I exemplet ovan har vi skapat en metod som heter display(). Metoden skriver ut ett uttalande till konsolen. Programmet beräknar metodens exekveringstid display().
Här har vi använt metoden nanoTime()i Systemklassen. Den nanoTime()metoden returnerar det aktuella värdet av den löpande JVM i nanosekunder.
Exempel 2: Beräkna exekveringstiden för rekursiv metod
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"); ) )
Produktion
Exekveringstid för rekursiv metod är 18600 nanosekunder
I exemplet ovan beräknar vi körtiden för den namngivna rekursiva metoden factorial().








