我正在尝试使用 currentTimeMillis 记录运行某个方法所用的时间,但无法打印出时间...
public int foo(int n, int k) {
if(n<=k)
return 1;
else
return foo(n/k,k) + 1;
}
我应该在 starTime、endTime 和 difference 的行中写什么?
我尝试用不同的方法抛出它:
public static long p3(int n, int k){
long starTime = System.currentTimeMillis();
foo(n, k);
long endTime = System.currentTimeMillis();
long difference = endTime - starTime;
return difference;
}
但是差异总是显示为0...
最佳答案
如果该方法的执行时间少于一毫秒,那么是的,差异将为零。
然后您需要使用纳秒。系统类也有一个方法: System#nanoTime();
关于java - 使用 currentTimeMillis 作为方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35104535/