十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
long st = System.currentTimeMillis();
创新互联建站成都企业网站建设服务,提供成都做网站、网站制作网站开发,网站定制,建网站,网站搭建,网站设计,成都响应式网站建设公司,网页设计师打造企业风格网站,提供周到的售前咨询和贴心的售后服务。欢迎咨询做网站需要多少钱:18982081108
// your code
long et = System.currentTimeMillis();
System.out.println( et - st);
开头结尾都用System.currentTimeMills记录下时间,结尾在输出两者的差值,就是你程序的执行时间,单位是毫秒。(System.currentTimeMillis()返回1970-01-01 00:00:00.000到现在的毫秒数)
分类: 电脑/网络 程序设计 其他编程语言
问题描述:
我想计算2个算法程序运行的时间,做一下比较
JAVA中有那些计算时间函数?最好以毫秒显示出来。
我知道System.currentTimeMillis()
但是不知道为什么,几个程序运行的时间都一样,都是16ms,也不知道是我程序太小了
还是写的不对,大家还知道别的计算时间的函数没?最好在程序开始计算,到程序最后
结束,最后显示一下时间。
解析:
import java.util.*;
public class RunningTime
{
public static void main(String argc[]) throws InterruptedException
{
int i=0,j=0;
long k=0,begin,end,time;
Date mydate=new Date();
begin=mydate.getTime();
for (;i100;i++)
{
for(;j100;j++)
{
Thread.currentThread().sleep(5);
k+=i*j;
}
}
Date mydate2=new Date();
end=mydate2.getTime();
time=end-begin;
System.out.println(begin+"运行时间为:"+time+" "+end);
}
}
计算运算时间的程序
此方法为 Java 内置的方法,使用 System.currentTimeMillis 来执行统计的时间(统计单位:毫秒)(统计单位:毫秒),示例代码如下:
public class TimeIntervalTest {
public static void main(String[] args) throws InterruptedException {
// 开始时间
long stime = System.currentTimeMillis();
// 执行时间(1s)
Thread.sleep(1000);
// 结束时间
long etime = System.currentTimeMillis();
// 计算执行时间
System.out.printf("执行时长:%d 毫秒.", (etime - stime));
}
}
以上程序的执行结果为:
执行时长:1000 毫秒.
方法二:System.nanoTime
此方法为 Java 内置的方法,使用 System.nanoTime 来统计执行时间(统计单位:纳秒),它的执行方法
最简单的就是直接获取开始时间、结束时间,计算时间差
public class Demo {
public static void main(String[] args) {
long startTime = System.currentTimeMillis(); //获取开始时间
doSomething(); //测试的代码段
long endTime = System.currentTimeMillis(); //获取结束时间
System.out.println("程序运行时间:" + (endTime - startTime) + "ms"); //输出程序运行时间
}
}