关于时间的最小单位

本文探讨了在Java中如何精确测量时间,从System.currentTimeMillis()的毫秒级别到System.nanoTime()的纳秒级别。还介绍了皮秒和飞秒作为更小的时间单位,并指出飞秒是目前最小的时间单位。尽管Java 1.5开始支持纳秒级时间,但是否支持皮秒和飞秒在当时的计算机系统中并不明确。
摘要由CSDN通过智能技术生成

关于时间的最小单位

以前很少研究过这个问题,一次业务上的需求,要求计算的性能要求很高,添加,读取,更新数据的效率都要是毫秒以下,为了测试,不得不在代码中通过前后添加类似这样的语句来调试:
long start = System.currentTimeMillis();
long end = System.currentTimeMillis();
long time = end - start;
这里也就发现一个问题,这里出来的时间都是毫秒,所以低于毫秒的时间不能表示出来。所以就很郁闷。不过,听说,java 1.5版本开始支持更小的时间单位,可以到纳秒,网上搜索了下资料,果然发现了更精确的时间单位:纳秒
于是可以这样计算耗费时间了:
long start = System.nanoTime();
long end = System.nanoTime();
long time = end - start;
测试下果然很精确,了解了下纳秒,原来纳秒的单位很小:
1秒 = 109纳秒  1秒 = 103毫秒
那么,纳秒是最小的时间单位吗,仔细搜索了下,大吃一惊,原来还有更小的时间时间单位:皮秒,飞秒
而且毫秒和纳秒之间还有一个微秒,这些单位之间的换算都是1000,换算如下:
1秒 = 1000000000000000飞秒 = 1000000000000皮秒  = 1000000000纳秒 = 1000000微秒 = 1000毫秒
1秒 = 1000000000000皮秒  = 100

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值