2024-03-14 19:04:26 | 我爱编程网
很多朋友都想知道java怎么获取运行时间?下面就一起来了解一下吧~
第一种是以毫秒为单位计算的。
//伪代码 long startTime=System.currentTimeMillis(); //获取开始时间 doSomeThing(); //测试的代码段 long endTime=System.currentTimeMillis(); //获取结束时间 System.out.println("程序运行时间: "+(end-start)+"ms"); //伪代码 long startTime=System.currentTimeMillis(); //获取开始时间 doSomeThing(); //测试的代码段 long endTime=System.currentTimeMillis(); //获取结束时间 System.out.println("程序运行时间: "+(end-start)+"ms");
第二种是以纳秒为单位计算的。 //伪代码 long startTime=System.nanoTime(); //获取开始时间 doSomeThing(); //测试的代码段 long endTime=System.nanoTime(); //获取结束时间 System.out.println("程序运行时间: "+(end-start)+"ns"); //伪代码 long startTime=System.nanoTime(); //获取开始时间 doSomeThing(); //测试的代码段 long endTime=System.nanoTime(); //获取结束时间 System.out.println("程序运行时间: "+(end-start)+"ns");
用Timer可以实现~~
Timer的schedule方法可以指定第一次运行的时刻,和重复间隔
具体可以参考API
timer.schedule(task, firstTime, period)
指定firstTime为21:00:00,period为一天的毫秒数24*3600*1000就成了。。
或者可以自己写个线程,放个while循环,每分钟检查一次,如果到时间了就执行任务,如果没到就sleep一分钟。。当然,这种方法比较土。。
更复杂点的可以借助现有的包,比如quartz,有兴趣可以研究下~~
我爱编程网(https://www.52biancheng.com)小编还为大家带来JAVA 获取一段程序运行时间的相关内容。
abstract class GetTime {
public final void getTime() {
long start = System.currentTimeMillis();
runcode();
long end = System.currentTimeMillis();
System.out.println("运行时间:" + (end - start) + "毫秒");//应该是end - start
}
public abstract void runcode();
}
public class SubTime extends GetTime {//建立一个java文件为SubTime.java,SubTime为主类,加为public
public void runcode() {
for (int x = 0; x < 4000; x++) {
System.out.println(x);
}
}
static public void main(String args[]) {//写一个主函数就好了
new SubTime().getTime();//建立对象调用getTime();我爱编程网
}
}
可以用eclipse运行
2025-02-01 20:24:39
2024-01-05 14:11:24
2025-02-10 15:19:48
2025-01-28 17:58:32
2025-02-12 03:21:37
2024-11-22 05:08:01