java 时间计算_Java程序运行时间计算
程序計時功能用處不是很多,但是在寫排序算法的時候加上程序計時功能可以很直觀的感受到不同的排序算法所用的時間。(當然前提是參與排序的數據量足夠大)
Java中有兩種方式獲取時間:
1.使用Calendar類(包為java.util.Calendar)獲取系統當前時間來進行執行時間的判斷
2.通過System.currentTimeMillis()或者System.nanoTime()方法獲得當前的時間的精確值
需要注意的是,第一種方法的誤差很大,給排序算法5000個數據進行排序,當我重復計時時,發現每次的計時結構會出現5-10ms的誤差,對于排序算法來說,這個誤差還是挺大的。然后是System.currrentTimeMillis()方法,通過文檔,這個方法調用了個native方法,獲取的時間精度會依賴于操作系統的實現機制,也就是說,不同的操作系統會有不同的答案,尷尬 = =|
最后就是System.nanoTime()方法了,這個就比較厲害了,直接是納秒級的計時方法,比上面的方法精度提升了10^6倍,所以對于時間精度要求比較高的話就放心用這種方法吧。
用法
假設我們需要測試Main()程序的時間,則:
方法1:
long start = Calendar.getInstance().getTimeInMillis();//開始時間,單位是毫秒
Main();//程序運行
long end = Calendar.getInstance().getTimeInMillis();//結束時間
double spentTime = (double) end - start; //末減初就是所花時間
方法2:
跟上面的思路一樣的,只是調用了不同的方法而已
long start = System.nanoTime();//單位是納秒
Main();
long end = System.nanoTime();
double spentTime = (double) end - start;
總結
以上是生活随笔為你收集整理的java 时间计算_Java程序运行时间计算的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于response格式转换
- 下一篇: Django项目部署到阿里云服务器上无法