zoukankan      html  css  js  c++  java
  • 我爱java系列---【java8时间类Instant】

    一、创建Instant实例

    Instant now = Instant.now();
    System.out.println("now:"+now);
    

      控制台输出:

    now:2020-08-31T18:53:38.105Z
    

      注意:通过这种方式获取的时间戳与北京时间相差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:2020-09-01T2:53:38.105Z

    二、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
    

      

    愿你走出半生,归来仍是少年!
  • 相关阅读:
    poj 1684 Lazy Math Instructor(字符串)
    STL内存配置器
    迭代器(iterators)
    类型萃取(type traits)
    hdu 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包+dp)
    hdoj 1114 Piggy-Bank(完全背包+dp)
    hdoj 2546 饭卡(0-1背包)
    hdoj 2620 Bone Collector(0-1背包)
    U3d开发个人总结
    Android软键盘的用法总结
  • 原文地址:https://www.cnblogs.com/hujunwei/p/13594007.html
Copyright © 2011-2022 走看看