如何在java中测量方法的确切执行时间?

时间:2016-11-21 05:46:18

标签: java

我试着在java中找到两个方法的执行时间。这两种方法功能相同但逻辑不同,执行时间不同。然后我试图找到两次相同方法的执行时间,但执行时间甚至几乎不相等10或10的倍数。 所以请告诉我,如何衡量java方法的确切执行时间。 `

public static void main(String[] args) throws Throwable {

    double t11 = System.nanoTime();
    System.out.println(test(2, 32));
    double t12 = System.nanoTime();
    System.out.println("Total time taken : "+(t12-t11));

    double t1 = System.nanoTime();
    System.out.println(test(2, 32));
    double t2 = System.nanoTime();
    System.out.println("Total time taken : "+(t2-t1));

}

public static long test(int num1, int num2){
    long value = num1;
    for(int i=2; i<=num2; i++) {
        value *= num1;
    }
    return value;
}

输出: 4294967296 Total time taken : 207084.0 4294967296 Total time taken : 35621.0

0 个答案:

没有答案