Java 计算一段代码运行的时间

一、精确到毫秒 (ms)

//获取开始时间
long startTime = System.currentTimeMillis(); 

//测试的代码段
method(); 

//获取结束时间
long endTime = System.currentTimeMillis(); 

//输出程序运行时间
System.out.println("程序运行时间:" + (endTime - startTime) + "ms"); 

二、精确到纳秒 (ns)

//获取开始时间
long startTime=System.nanoTime(); 

//测试的代码段
method(); 

//获取结束时间
long endTime=System.nanoTime(); 

System.out.println("程序运行时间:"+ (endTime - startTime) + "ns");

注:

System.currentTimeMillis();
用来返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。

System.nanoTime();
返回正在运行的Java虚拟机的高分辨率时间源的当前值,以纳秒为单位,nanoTime而返回的可能是任意时间,甚至可能是负数

System.nanoTime每个JVM维护一份,和系统时间无关,可用于计算时间间隔,比System.currentTimeMillis的精度要高。

修改了系统时间会对System.currentTimeMillis造成影响,而对System.nanoTime没有影响。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值