Java8日期时间——LocalDateTime的使用以及相互转换

日期时间处理

Java8内每个类含义

在 Java8 之前操作时间,用的都是 Date 和 Calendar 类,但这两个类,操作起来及其繁琐,且在时间转换、时区转换的时候也很麻烦,因此 JDK 官方在 8 之后,引入了 LocalDateTime 以及相关类,通过新的类来定义和操作时间,也十分的简单清晰,下面我们就来我看一下如何操作。

  1. Instant: 时间戳
  2. Duration: 持续时间, 时间差
  3. LocalDate: 只包含⽇期, ⽐如: 2016-10-20
  4. LocalTime: 只包含时间, ⽐如: 231210
  5. LocalDateTime: 包含⽇期和时间, ⽐如: 2016-10-20 231421
  6. Period: 时间段
  7. ZoneOffset: 时区偏移量, ⽐如: +8:00
  8. ZonedDateTime: 带时区的时间
  9. Clock: 时钟, ⽐如获取⽬前美国纽约的时间

代码实现

localdatetime -> 其他类型

 // =================================================================================

    public static Date localDateTimeToDate(LocalDateTime localDateTime) {
   
        Date date = Date.from(localDateTime.toInstant(ZoneOffset.ofHours(8)));
        return date;
    }

    public static Date localDateTimeToDate(LocalDateTime localDateTime, ZoneOffset zoneOffset) {
   
        Date date = Date.from(localDateTime.toInstant(zoneOffset));
        return date;
    }

    public static long localDateTimeToTimestamp(LocalDateTime localDateTime) {
   
        long timestamp = localDateTime.toInstant(ZoneOffset.ofHours(8)).getEpochSecond();
        return timestamp;
    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值