我偶然发现了这个方法
public static Date getNowDate() {
final Calendar cal = new GregorianCalendar();
cal.setTime(new Date());
return cal.getTime();
}
这样被调用:
getNowDate().getTime()
这与调用
有什么不同System.currentTimeMillis()
答案 0 :(得分:3)
长(毫)的结果返回值没有区别
如果您希望使用当前日期,则更简单,您可以在日历中设置日期并在getNowDate()
中将其检索回来,这可以简化如下
public static Date getNowDate() {
return new Date();
}
答案 1 :(得分:2)
除了表现之外,它们都是一样的。
System.currentTimeMillis()是系统调用,因此需要大约0.1到0.3微秒(取决于您的操作系统)
new Date()还会创建一个对象,只需要0.1到0.3微秒更多,但会产生一些垃圾。
Calendar.getInstance()会创建一组昂贵的对象,并且需要 33 微秒更多。
答案 2 :(得分:0)
我不认为这两者之间存在任何差异,以结果的形式存在,因为它们都会返回1970年1月1日以后的长值直到约会。
即使只是致电Date d = new Date();
,也会为您提供当前日期和
调用d.getTime();
将返回其长期重新访问