对比System.currentTimeMillis()、new Date().ge…

2020-03-02 16:01:49来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

对比System.currentTimeMillis()、new Date().getTime()、System.nanoTime()

1.System.currentTimeMillis()和new Date().getTime()

开发时习惯使用new Date().getTime()来获取当前的毫秒数,但其实没有必要
java中Date的代码实现:

public Date()
{
...
this(System.currentTimeMillis());
}

new Date()做的事情就是调用System.currentTimeMillis(),两者本质上效果一样,所以建议使用System.currentTimeMillis()代替new Date().getTime(),同时效率也更高


2.System.currentTimeMillis()和System.nanoTime()

System.currentTimeMillis()返回的是自1970年1月1日0时起的毫秒数
System.nanoTime()返回的是纳秒值可能是任意时间或者是负数
System.nanoTime()主要用于计算时间间隔,精度较高
示例:

long t0 = System.nanoTime();
// do something
long t1 = System.nanoTime();
long millis = TimeUnit.NANOSECONDS.toMillis(t1 - t0);
System.out.println(String.format("something took: %d ms", millis));

原文链接:https://www.cnblogs.com/hu-hugh/p/dui-bisystemcurrenttimemillisnew-dategettimesystem.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:数组

下一篇:使用SpringBoot开发群聊应用