文章字数:201,阅读全文大约需要1分钟
java获取当前时间可以使用 System.currentTimeMillis()获取当前毫秒数,也可以直接new Date()获取当前日期类,date.getTime()获取毫秒数
联系
Date的无参构造方法
1 | public Date() { |
本质上也是调用System.currentTimeMillis(),所以如果需要获取当前毫秒数,System.currentTimeMillis()
比起new Date().getTime()
少了引用及转换,效率更高。
精确度
System.currentTimeMillis()
依赖系统底层实现,精确度无法保证。毫秒级别的时间,测量从1970年1月1日0到现在的毫秒数。System.nanoTime
也是依赖系统底层实现,但是精度为纳秒。此方法依赖cpu自身的计时器,所以不同机器返回的时间不同,只能用作计算某一时间内的时间差。
纳秒转换成毫秒
1 | System.nanoTime()/1000000L |