在軟件開發過程中經常需要知道程序運行的大概時間,或者需要在規定時間內取數據,這是可以使用下面的方法獲取時間段,還可以用在限時循環
方法一:
1
2
3
4
5
6
7
|
/** 獲取當前系統時間*/ long startTime = System.currentTimeMillis(); /** 程序運行 processRun();*/ /** 獲取當前的系統時間,與初始時間相減就是程序運行的毫秒數,除以1000就是秒數*/ long endTime = System.currentTimeMillis(); long usedTime = (endTime-startTime)/ 1000 ; |
方法二:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
//初始化變量 Date before= new Date(); Date now= new Date(); //定時循環 while (t<= 10 //循環時間){ // 計算循環總時長 now = new Date(); // 現在的時間減去開始的時間可以計算出來使用的時間 t = (now.getTime() - before.getTime())/ 1000 ; //循環內容 } |
我們一般的java運輸計時代碼是
1
2
3
4
|
long begintime = System.currentTimeMillis(); //運算代碼 long endtinme=System.currentTimeMillis(); long costTime = (endtime - begintime); |
但是,如果運算時間很短的時候,這個一個是現在機器太厲害,還有由于.currentTimeMillis()是1970年1月1日到現在的毫秒數,估計應該把很多小數位省略了,沒看過代碼,猜的,呵呵。結果一般是0,無法顯示算法消耗時間,這個時候可以用nanoTime(),納秒。
1
2
3
4
5
|
long begintime = System.nanoTime(); //運算代碼 long endtime = System.nanoTime(); long costTime = (endtime - begintime)/ 1000 ; //要換算為微秒,就除上1000,就可以 |
以上這篇Java簡單計時的實現案例(可以用來限時循環)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。
原文鏈接:https://www.cnblogs.com/ZenoLiang/p/11014251.html