JDK1.8之日期类

jdk8通过发布新的Date-Time API(JSR 310)来进一步加强对日期与时间的处理,新增了很多常见的api, 如==日期的比较, 加减, 格式化等操作

  • 线程安全的日期类

核心类

名称描述
LocalDate 不包含具体时间的日期
LocalTime 不包含日期的时间
LocalDateTime 包含了日期和时间

操作

  • 获取当前时间
1
2
LocalDateTime now = LocalDateTime.now();
System.out.println(now);<br><br>//2022-10-08T23:28:17.658
  • 格式化时间
1
2
3
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String time = dtf.format(now);
System.out.println(time);<br><br>//2022-10-08 23:30:09
  • 获取指定日期的对象  
  LocalDateTime dateTime = LocalDateTime.of(2022,11,9,00,00,00);
  System.out.println(dateTime);

//2022-11-09T00:00

用于计算与当前时间的日期差,应用:会员剩余天数

  • 计算指定日期与当前日期之差
 Duration duration = Duration.between(now, dateTime);
 System.out.println("会员还剩:" + duration.toDays() + "天");

//会员还剩:31天
复制代码
// 计算时间差
// 获取时间差对象
Duration duration = Duration.between(now, nextTime);
// 两个时间相差的天数
System.out.println(duration.toDays());
// 两个时间相差的小时数
System.out.println(duration.toHours());
// 两个时间相差的分钟数
System.out.println(duration.toMinutes());
// 两个时间相差的毫秒数
System.out.println(duration.toMillis());
// 两个时间相差的纳秒数
System.out.println(duration.toNanos());
复制代码

 

posted @   Joshua_BlueSky  阅读(100)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示