
第一种是以芹槐毫秒为单位计算的。
//伪代码 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")
分类: 电脑/网络 >>程序设计 >>其他编程语言问题描述:
我想计算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 (i<耐晌100i++)
{
for(j<100j++)
{
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()该方法获得此时的时间,代码如下:
package com.qiu.lin.heimport java.text.ParseException
public class Ceshi {
public static void main(String[] args) throws ParseException {
double begin = System.currentTimeMillis() // 程序开枝哗始时间,调用系统的当前时间
for (int i = 0 i < 10000 i++) {
// 猛和行这里执行具体的业务逻辑
System.out.println(i)
}
// 你要运行的程序
double end = System.currentTimeMillis() // 程序结束时间,调用系统当前时间
double time = end - 棚键begin// 程序的运行时间
System.out.println(time / 60 + "秒")
}
}
运行结果如下:
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)