我在多個for
中包含的定時兩種方法有問題。我正在使用System.currentTimeMillis();
。問題是我不知道在哪裏放開始時間和結束時間。我想要5次執行methodA和methodB。 當我運行它時,方法B的methodA和0ms
得到12 ms
,但程序運行需要大約10分鐘。代碼如下所示:java中的多重定時方法
int count = 0;
double e = 0.3;
long startTimeA;
long endTimeA;
long startTimeB;
long endTimeB;
long sumA = 0;
long sumB = 0;
for(int k=0; k<5; k++){
startTimeA = System.currentTimeMillis();
startTimeB = System.currentTimeMillis();
for(int i = 0; i < 40; i++) {
for(int j = i + 1; j < 40; j++) {
double a = methodA();
endTimeA = System.currentTimeMillis() - startTimeA;
double b = methodB();
endTimeB = System.currentTimeMillis() - startTimeB;
int c = methodC();
}
sumA += endTimeA;
sumB += entTimeB;
}
}
System.out.println("total time A: " + sumA + " ms");
System.out.println("total time B: " + sumB + " ms");
也許你想打印sumA和sumB而不是endTimeA和endTimeB? –
對不起,這是我的意思是寫它的sumA,sumB – flower