登录
首页 >  文章 >  java教程

JavaLocalDate和LocalTime使用详解

时间:2025-11-05 12:29:43 209浏览 收藏

目前golang学习网上已经有很多关于文章的文章了,自己在初次阅读这些文章中,也见识到了很多学习思路;那么本文《Java中使用LocalDate和LocalTime教程》,也希望能帮助到大家,如果阅读完后真的对你学习文章有帮助,欢迎动动手指,评论留言并分享~

LocalDate和LocalTime是Java 8引入的不带时区的日期时间类,分别表示年-月-日和时:分:秒,如LocalDate.now()获取当前日期,LocalTime.of(14,30)创建指定时间,二者均不可变且线程安全,常用操作包括plus/minus系列方法及字段提取,结合使用可构建LocalDateTime。

在Java中如何使用LocalDate和LocalTime

Java 8 引入了新的日期时间 API,位于 java.time 包中,其中 LocalDateLocalTime 是两个常用类,分别用于表示不带时区的日期和时间。它们是不可变的、线程安全的对象,使用起来简单直观。

LocalDate:处理日期

LocalDate 表示一个年-月-日的日期,比如 2025-04-05,不包含时间和时区信息。

获取当前日期:
  • LocalDate now = LocalDate.now(); // 获取系统默认时区的当前日期
创建指定日期:
  • LocalDate date = LocalDate.of(2025, 4, 5); // 年、月、日
  • 也可以使用 Month 枚举:LocalDate.of(2025, Month.APRIL, 5)
常见操作:
  • date.plusDays(3) // 增加3天,返回新对象
  • date.minusMonths(1) // 减少1个月
  • date.getYear()date.getMonth()date.getDayOfMonth() // 获取字段值
  • date.getDayOfWeek() // 返回星期几(如 MONDAY)
  • date.isLeapYear() // 判断是否为闰年

LocalTime:处理时间

LocalTime 表示一个时间,如 13:45:30,不包含日期和时区。

获取当前时间:
  • LocalTime now = LocalTime.now(); // 系统当前时间
创建指定时间:
  • LocalTime time = LocalTime.of(14, 30); // 14:30
  • LocalTime.of(14, 30, 45) // 14:30:45
  • LocalTime.of(14, 30, 45, 100_000_000) // 包含纳秒
常见操作:
  • time.plusHours(2) // 增加2小时
  • time.minusMinutes(15) // 减去15分钟
  • time.getHour()time.getMinute()time.getSecond() // 获取时间字段
  • time.withSecond(0) // 设置秒为0,返回新实例

结合使用 LocalDate 和 LocalTime

如果需要同时处理日期和时间,可以使用 LocalDateTime,它是前两者的组合。

  • LocalDateTime dateTime = LocalDateTime.of(date, time);
  • LocalDateTime.now() // 直接获取当前日期时间
  • 也可以从 LocalDateLocalTime 扩展:date.atTime(10, 30)time.atDate(date)

基本上就这些。LocalDate 和 LocalTime 设计简洁,适合大多数不需要时区的场景,比如记录生日、营业时间等。操作都返回新对象,不会修改原值,使用时注意接收返回值。

本篇关于《JavaLocalDate和LocalTime使用详解》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于文章的相关知识,请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>