zoukankan      html  css  js  c++  java
  • Instant时间API学习

    原博客地址: https://blog.csdn.net/chunzhilianxue/article/details/80974202

    一、创建Instant实例

    Instant now = Instant.now();
    System.out.println("now:"+now);
    • 控制台输出:
    now:2018-07-09T08:59:08.853Z
    
    • 注意:通过这种方式获取的时间戳与北京时间相差8个时区,需要修正为北京时间,通过查看源代码发现Instant.now()使用等是UTC时间Clock.systemUTC().instant()。LocalDate、LocalDateTime 的now()方法使用的是系统默认时区 不存在Instant.now()的时间问题。

    ###解决方法
    增加8个小时

    Instant now = Instant.now().plusMillis(TimeUnit.HOURS.toMillis(8));
    System.out.println("now:"+now);
    • 控制台输出:
    now:2018-07-09T16:58:48.188Z
    

    二、Instant获取long类型的10位秒数、13位毫秒数

    Instant now = Instant.now().plusMillis(TimeUnit.HOURS.toMillis(8));
    System.out.println("秒数:"+now.getEpochSecond());
    System.out.println("毫秒数:"+now.toEpochMilli());
    • 控制台输出:
    秒数:1539170157
    毫秒数:1539170157886
    • LocalDateTime输出毫秒数的方式,比Instant多一步转换
    LocalDateTime localDateTime = LocalDateTime.now();
    //LocalDateTime转Instant
    Instant localDateTime2Instant = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
    System.out.println("LocalDateTime 毫秒数:"+localDateTime2Instant.toEpochMilli());
    • 控制台输出:
    LocalDateTime 毫秒数:1539141733010
  • 相关阅读:
    oracle查询当天数据三种方式性能对比
    APPCAN IDE中安装emmet插件
    MAS 移动业务整合系统
    SDK 移动应用开发系统
    移动应用开发平台介绍
    安装Sublime Text 3插件的方法
    2014勿勿已过,2015已迎面而来
    入驻博客园
    zkw线段树
    贪心题
  • 原文地址:https://www.cnblogs.com/liruilong/p/13583243.html
Copyright © 2011-2022 走看看