Šiame pavyzdyje išmoksime apskaičiuoti įprastų „Java“ metodų ir rekursinių metodų vykdymo laiką.
Norėdami suprasti šį pavyzdį, turite žinoti šias Java programavimo temas:
- „Java“ metodai
- „Java Recursion“
1 pavyzdys: „Java“ programa metodo vykdymo trukmei apskaičiuoti
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"); ) )
Rezultatas
Skaičiuojant metodo vykdymo laiką: Vykdymo laikas: 656100 nanosekundžių
Ankstesniame pavyzdyje mes sukūrėme metodą, pavadintą display()
. Metodas spausdina teiginį į konsolę. Programa apskaičiuoja metodo vykdymo laiką display()
.
Čia mes naudojome metodą nanoTime()
iš System
klasės. nanoTime()
Metodas grąžina dabartinę vertę veikia JVM nanosekundžių.
2 pavyzdys: apskaičiuokite rekursinio metodo vykdymo laiką
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"); ) )
Rezultatas
Rekursinio metodo vykdymo laikas yra 18600 nanosekundžių
Pirmiau pateiktame pavyzdyje mes apskaičiuojame rekursinio metodo, pavadinto, vykdymo laiką factorial()
.