java日期转换

本文介绍了Java中日期的多种表示方式,包括long型日期格式、指定格式的日期获取及转换,并演示了如何利用毫秒值进行日期计算。此外,还探讨了System.currentTimeMillis()与System.nanoTime()在精度上的差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

日期表示类型

1. 获取long类型的日期格式
    long time = System.currentTimeMillis();
    System.out.printf(time+"");
    Date date =new Date();
    System.out.println(date.getTime());
2. 获取制定格式的日期
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    Date date =new Date();
    System.out.println(sdf.format(date) );
 3. 把制定格式的日期转为date或者毫秒值
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    Date date = sdf.parse("2016-05-22 10:15:21");
    long mills = date.getTime();
  • 说明:System.currentTimeMillis()并不能精确到1ms的级别,它取决于运行的系统,你再windows,mac,linux精确的范围都有差异,对于有高精度时间的要求,不能使用这个

日期计算

  1. 最方便的方式是将时间转为毫秒值进行计算
    Date from =new Date();
    Thread.sleep(200);//线程休眠2ms
    Date to =new Date();
    System.out.println(to.getTime()-from.getTime());

高精度时间

    long time1 =System.nanoTime();
    System.out.printf(time1+"");
  • 说明:System.nanoTime()提高了ns级别的精度,1ms=1000000ns,

如果文章对你有帮助,请去我的博客留个言吧! 我的博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值