English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этом примере мы изучим вычисление времени выполнения обычных и рекурсивных методов в Java.
Чтобы понять этот пример, вам следует знать следующееJava-программированиеТема:
class Main { //Создание метода public void display() { System.out.println("Вычисление времени выполнения метода:"); } //Метод main public static void main(String[] args) { //Создать объект класса Main Main obj = new Main(); //Получить время начала long start = System.nanoTime(); //Вызов метода obj.display(); //Получить время завершения long end = System.nanoTime(); //Время выполнения long execution = end - start; System.out.println("Время выполнения: " + execution + " нанoseconds"); } }
Результат вывода
Вычисление времени выполнения метода: Время выполнения: 656100 нанoseconds
В предыдущем примере мы создали метод display(). Этот метод выводит строку на указанную консоль. Программа вычисляет время выполнения метода display().
Здесь мы используем метод nanoTime() класса System. Метод nanoTime() возвращает текущее значение JVM в наносекундах.
class Main { //创建一个递归方法 public int factorial(int n) { if (n != 0) //终止条件 return n * factorial(n - 1); //递归调用 else return 1; } //Метод main public static void main(String[] args) { //Создать объект класса Main Main obj = new Main(); //Получить время начала long start = System.nanoTime(); //Звонок метода obj.factorial(128); //Получить время завершения long end = System.nanoTime(); //Время выполнения (секунды) long execution = (end - start); System.out.println("Время выполнения рекурсивного метода"); System.out.println(execution + " наносекунд"); } }
Результат вывода
Время выполнения рекурсивного метода 18600 наносекунд
В上面的 примере, мы считаем время выполнения рекурсивного метода с именем factorial().