new Date().getTime()和System.currentTimeMillis()的区别

  在Java中,new Date().getTime()和System.currentTimeMillis()都是用来获取当前时间的,并可以用DateFormat转成对应的时间格式,代码如下。

import java.text.SimpleDateFormat;
import java.util.Date;

public class TestDate {
    
    final static SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:SS");

    public static void main(String[] args) {
                
        System.out.println(DATE_FORMAT.format(new Date().getTime()));
        System.out.println(DATE_FORMAT.format(System.currentTimeMillis()));
        
    }

}

  那么,他们有什么区别呢?查看Date类的源码,可以发现构造方法如下:

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

  综上,Date类的获取时间戳只是调用了系统类中currentTimeMillis()方法,在实际操作中,使用System.currentTimeMillis()可以获得更高的精度。

猜你喜欢

转载自www.cnblogs.com/AlleyMeowy/p/10204238.html