Java获取毫秒值

1.java.lang.System类

该方法的作用是返回当前的计算机时间,时间的表达格式为当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的毫秒数。

        System.currentTimeMillis();

2.Calendar类

先由getInstance获取Calendar对象,然后用clear方法将时间重置为(1970.1.1 00:00:00),接下来用set方法设定指定时间,最后用getTimeMillis获取毫秒值。

        Calendar calendar = Calendar.getInstance();
        calendar.clear();
        //指定时间的毫秒数
        calendar.set(2021, 0, 1);
        long millis = calendar.getTimeInMillis();

Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 进行表示。 

3.java.util.Date类、SimpleDateFormat类

先由时间格式创建SimpleDateFormat对象,然后通过parse方法由指定时间创建Date对象,最后由Date对象的getTime方法获取毫秒值。

        SimpleDateFormat format = new SimpleDateFormat("yyyy-mm-dd");
        Date date = null;
        try {
            //指定时间的毫秒数
            date = format.parse("2021-01-01");
        } catch (ParseException e) {
            e.printStackTrace();
        }
        long millis = date.getTime();

测试

    public static void test() {
        long curTime1 = System.nanoTime();
        System.out.println("System.currentTimeMillis()  " + System.currentTimeMillis() + " 耗时(ns):" + (System.nanoTime() - curTime1));

        long curTime2 = System.nanoTime();
        System.out.println("new Date().getTime()    " + new Date().getTime() + " 耗时(ns):" + (System.nanoTime() - curTime2));

        long curTime3 = System.nanoTime();
        System.out.println("Calendar.getInstance().getTimeInMillis()    " + Calendar.getInstance().getTimeInMillis() + " 耗时(ns):" + (System.nanoTime() - curTime3));
    }

结果

System.currentTimeMillis()  1630315030949 耗时(ns):39600
new Date().getTime()    1630315030949 耗时(ns):500300
Calendar.getInstance().getTimeInMillis()    1630315030956 耗时(ns):19424400

参考:

https://www.cnblogs.com/jpfss/p/10455524.html

转载请注明出处:BestEternity亲笔。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值