java - 使用 currentTimeMillis 作为方法

标签 java

我正在尝试使用 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/

相关文章:

java - 如何使用 Selenium 操作 HTML 源代码中不存在的搜索栏?

Java TreeMap 出现故障

java - 我可以将 IntelliJ 设置为自动缩进代码主体吗?

java - GridBagLayout 控制 Swing 中的对齐方式

java - SinglyLinkedList 删除(int index) 方法

java - 当我从不在 ExecutorService 上调用 shutdown 时会发生什么?

java - 如何打破初始化 block ?

java - REGEX:从被许多可选组包围的特定组获取信息

java - Spring路由因无效路由而出现404错误

java - Libgdx:无限世界。如何?