https://www.cnblogs.com/zhujiabin/p/6168671.html?utm_source=itdadao&utm_medium=referral 

获取当前时间戳

复制代码

//方法 一System.currentTimeMillis();//方法 二Calendar.getInstance().getTimeInMillis();//方法 三new Date().getTime();

复制代码

获取当前时间

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式String date = df.format(new Date());// new Date()为获取当前系统时间,也可使用当前时间戳

获取时间戳三种方法执行效率比较:

复制代码

import java.util.Calendar;
import java.util.Date; 
public class TimeTest {    private static long _TEN_THOUSAND=10000;    public static void main(String[] args) {        long times=1000*_TEN_THOUSAND;        long t1=System.currentTimeMillis();
        testSystem(times);        long t2=System.currentTimeMillis();
        System.out.println(t2-t1);
 
        testCalander(times);        long t3=System.currentTimeMillis();
        System.out.println(t3-t2);
 
        testDate(times);        long t4=System.currentTimeMillis();
        System.out.println(t4-t3);
    } 
    public static void testSystem(long times){//use 188
        for(int i=0;i<times;i++){            long currentTime=System.currentTimeMillis();
        }
    } 
    public static void testCalander(long times){//use 6299
        for(int i=0;i<times;i++){            long currentTime=Calendar.getInstance().getTimeInMillis();
        }
    } 
    public static void testDate(long times){        for(int i=0;i<times;i++){            long currentTime=new Date().getTime();
        }
    }
 
}

复制代码

执行结果:
133
2372
137

Calendar.getInstance().getTimeInMillis() 这种方式速度最慢,这是因为Canlendar要处理时区问题会耗费较多的时间。