黑马程序员技术交流社区

标题: 关于计算时间的方法.... [打印本页]

作者: 328078121    时间: 2013-8-30 19:57
标题: 关于计算时间的方法....
本帖最后由 328078121 于 2013-8-30 23:11 编辑

System类里有个currentTimeMillis()是获取当前时间毫秒数,自1970 1 1 日午夜算起,我们计算一个程序程序的执行时间时,就可以在开头和和结尾用此方法,然后取差。
我发现还有一个获取时间的方法nanoTime(),API上说返回最准确的可用系统计时器的
当前值,以毫微秒为单位,是不是计算程序时间用这个更好些呢?
API上解释的nanoTime()我始终没能看懂,这是原文:
此方法只能用于测量已过的时间,与系统或钟表时间的其他任何时间概念无关。返回值表示从某一固定但任意的时间算起的毫微秒数(或许从以后算起,所以该值可能为负)。此方法提供毫微秒的精度,但不是必要的毫微秒的准确度。它对于值的更改频率没有作出保证。在取值范围大于约 292 年(263 毫微秒)的连续调用的不同点在于:由于数字溢出,将无法准确计算已过的时间。
哪位给通俗的解释下啊。

作者: 月黑风高    时间: 2013-8-30 20:55
意思就是该方法只能用于纳秒级别的计时,并不能用这个值来构造一个Date对象。
只能用于测量已过的时间,由于是值是任意的,也可能是未来的时间,返回值可能会是负数。
用处不大,无须费心!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2