System.currentTimeMillis()与新的Date()vs. Calendar.getInstance()。getTime()

问题:

在Java中,使用的性能和资源含义是什么?

System.currentTimeMillis() 

new Date() 

Calendar.getInstance().getTime()

据我所知,System.currentTimeMillis()是最有效率的。然而,在大多数应用程序中,这个长期的值将需要转换为Date或类似的对象来对人类做任何有意义的事情。

回答:

 System.currentTimeMillis()显然是高效,因为它甚至没有创建一个对象,但new Date()真的只是一个很长的薄薄的包装器,所以它不是很落后。另一方面,Calendar相对较慢,非常复杂,因为它必须处理日期和时间(闰年,夏令时,时区等)固有的复杂性和所有怪物。
处理应用程序中较长的时间戳或Date对象通常是一个好主意,只有在实际需要执行日期/时间计算时才使用Calendar,或将用于显示给用户的日期格式化。如果你需要做很多事情,使用Joda Time可能是一个好主意,更清洁的界面和更好的性能。

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: System.currentTimeMillis() vs. new Date() vs. Calendar.getInstance().getTime()

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

− 5 = 1