Вимірювання часу виконання коду є важливим для оптимізації продуктивності в Java додатках. Це допомагає розробникам виявити пляшки і підвищити ефективність. У статті досліджуються загальні методи розрахунку часу виконання і забезпечує практичні приклади.

Використання System.nanoTime()

System.nanoTime()] метод пропонує вимірювання часу високої роздільної здатності. Повертає поточну вартість найбільш точного таймера системи, в наносекундах. Для вимірювання часу виконання записуйте час запуску до коду, і закінчення часу після завершення. Різниця вказує на час клаптяв.

Приклад:

long StartTime = System.nanoTime();]

//код для вимірювання

long endTime = System.nanoTime();]

довга тривалість = endTime - startTime;

Використання системи.currentTimeMillis()

System.currentTimeMillis() метод забезпечує поточний час в мілісекундах. Він менш точний, ніж , але підходить для вимірювання тривалих тривалостей. Аналогічно до попереднього методу записувати початок і закінчувати час навколо блоку коду.

Приклад:

long StartTime = System.currentTimeMillis();[]

//код для вимірювання

long endTime = System.currentTimeMillis();[

довга тривалість = endTime - startTime;

Використання миттєвого класу Java

Пакет клас з java.time]] пропонує сучасний підхід до вимірювання часу. Він забезпечує наносекундну точність і підходить для вимірювання тривалостей.

Приклад:

Запуск на зворотний зв'язок ();

//код для вимірювання

Незмінний кінець = Миттєвий.now();

Тривалість довічного запису = Тривалість.between(start, end);

Приклад реального світу

Ви хочете виміряти, як довго він бере на сортування великого масиву. Використовуючи System.nanoTime()], ви можете реалізувати наступні:

[[] array = new int[1 000 000];

// попульта

long StartTime = System.nanoTime();]

Арраїс.sort(array);

long endTime = System.nanoTime();]

System.out.println("Розгортання взяв " + (endTime - StartTime) + "наносекунди".);