在此示例中,我们将学习计算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 + " 纳秒");
}
}输出结果
计算方法执行时间: 执行时间: 656100 纳秒
在上面的示例中,我们创建了一个名为display()的方法。该方法将一条语句输出到指定台。程序将计算display()方法的执行时间。
在这里,我们使用了System类的nanoTime()方法。该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()的递归方法的执行时间。