java使用new Date()和System.currentTimeMillis()获取当前时间戳

 

在开发过程中,通常很多人都习惯使用new Date()来获取当前时间,使用起来也比较方便,同时还可以获取与当前时间有关的各方面信息,例如获取小时,分钟等等,而且还可以格式化输出,包含的信息是比较丰富的。但是有些时候或许你并不需要获取那么多信息,你只需要关心它返回的毫秒数就行了,例如getTime()。为了获取这个时间戳,很多人也喜欢使用new Date().getTime()去获取,咋一看没什么问题,但其实没这个必要。

其实看一下java的源码就知道了:

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

已经很明显了,new Date()所做的事情其实就是调用了System.currentTimeMillis()。如果仅仅是需要或者毫秒数,那么完全可以使用System.currentTimeMillis()去代替new Date(),效率上会高一点。况且很多人喜欢在同一个方法里面多次使用new Date(),通常性能就是这样一点一点地消耗掉,这里其实可以声明一个引用。

from:

http://www.cnblogs.com/wuchen/archive/2012/06/30/2570746.html

另:

java的System.currentTimeMillis() 和 System.nanoTime() 区别:

java中System.nanoTime()返回的是纳秒,nanoTime而返回的可能是任意时间,甚至可能是负数

主要的用途是衡量一个时间段,比如说一段代码执行所 用的时间,获取数据库连接所用的时间,网络访问所用的时间等

另外,nanoTime提供了纳秒级别的精度,但实际上获得的值可能没有精确到纳秒

java中System.currentTimeMillis()返回的毫秒,这个毫秒其实就是自1970年1月1日0时起的毫秒数

from:

http://www.cnblogs.com/ungshow/archive/2011/12/05/2276333.html

最新文章

  1. iOS开发之UITapGestureRecognizer单双击
  2. JavaScript------事件委托(event delegation)
  3. cannot open /proc/bus/usb/devices, No such file or directory
  4. cookie 和 session 机制
  5. 将字符转换为unicode码
  6. jQuery CSS 的操作函数
  7. PHPCMSV9 更换域名后,要做的操作
  8. (转)pem, cer, p12 and the pains of iOS Push Notifications encryption
  9. 从1....n中随机输出m个不重复的数
  10. Evensgn 剪树枝 树规
  11. thinkphp5.1验证器场景验证中传参的方法。
  12. 玩转C线性表和单向链表之Linux双向链表优化
  13. [物理学与PDEs]第3章第2节 磁流体力学方程组 2.4 不可压情形的磁流体力学方程组
  14. CDQZ多校集训记
  15. RDD、DataFrame、Dataset三者三者之间转换
  16. excel冻结窗格
  17. 【区块链Go语言实现】Part 2:工作量证明机制POW
  18. PAT A1007 Maximum Subsequence Sum (25 分)——最大子列和,动态规划
  19. ASP.NET MVC下实现前端视图页的Session
  20. DescriptionAttribute Class

热门文章

  1. 【温故知新】——CSS黑魔法小技巧可以少些不必要的js
  2. win10中以管理员身份启动notepad、cmd、editplus
  3. vector(可变数组) 用于UDP通信
  4. 我如何添加一个空目录到Git仓库?
  5. iphone、ipod Touch、ipad触屏时的js事件
  6. Chrome自带恐龙小游戏的源码研究(三)
  7. ASP.NET数据库连接字符串的加密与解密
  8. python学习(十)赋值、表达式、if、while、for
  9. ZIP解压缩文件的工具类【支持多级文件夹|全】
  10. Silverlight 5 Grid组的MouseLeave响应