There are situations when we need to understand the time taken for executing a section of code. We are also aware that System.currentTimeMillis() provides a good estimate of time.
System.nanoTime() is a more accurate version of time and can be used as below.
public class ExecuteTask
{
public static void main(String args[])
{
executeTask();
}
private static void executeTask()
{
//Capturing the start time
long startTime = System.nanoTime();
System.out.println("Start time: " + startTime);
//Execute the task
for (int i=0;i {
//do nothing
}
//Capturing the end time
long endTime = System.nanoTime() - startTime;
System.out.println("End time: " + endTime);
}
}