在软件开发过程中经常需要知道程序运行的大概时间,或者需要在规定时间内取数据,这是可以使用下面的方法获取时间段,还可以用在限时循环
方法一:
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