使用 TemporalAdjusters 类调整 LocalDate 到月份的最后一天的 Java 程序


在这篇文章中,我们将学习来自 java.time 包LocalDateMonthTemporalAdjusters。这些类对于处理 Java 中的日期时间操作至关重要。

LocalDate 表示没有时间的日期,Month 是十二个月的枚举,TemporalAdjusters 提供了用于常见日期调整的实用程序方法。我们将学习如何设置特定日期并调整它以查找月份的第一天和最后一天以及下一月的第一天。

使用 TemporalAdjusters 类将 LocalDate 调整到月份的最后一天的步骤

以下是使用 TemporalAdjusters 类将 LocalDate 调整到月份的最后一天的步骤:

  • 导入必要的类。
  • 使用 LocalDate.of() 方法设置特定日期。
  • 打印当前日期和月份。
  • 将日期调整到月份的第一天。
  • 将日期调整到月份的最后一天。
  • 将日期调整到下一月的第一天。
  • 打印调整后的日期。

使用 TemporalAdjusters 类调整 LocalDate 到月份的最后一天的 Java 程序

以下是用 TemporalAdjusters 类将 LocalDate 调整到月份的最后一天的 Java 程序:

import java.time.LocalDate;
import java.time.Month;
import java.time.temporal.TemporalAdjusters;
public class Demo {
   public static void main(String[] args) {
      LocalDate localDate = LocalDate.of(2019, Month.JUNE, 15);
      System.out.println("Current Date = "+localDate);
      System.out.println("Current Month = "+localDate.getMonth());
      LocalDate day = localDate.with(TemporalAdjusters.firstDayOfMonth());
      System.out.println("First day of month = "+day);
      day = localDate.with(TemporalAdjusters.lastDayOfMonth());
      System.out.println("Last day of month = "+day);
      day = localDate.with(TemporalAdjusters.firstDayOfNextMonth());
      System.out.println("First day of next month = "+day);
   }
}

输出

Current Date = 2019-06-15
Current Month = JUNE
First day of month = 2019-06-01
Last day of month = 2019-06-30
First day of next month = 2019-07-01

代码解释

上述程序首先从java.time 包中导入LocalDateMonthTemporalAdjusters。我们使用LocalDate.of() 方法初始化LocalDate 实例,并打印当前日期和月份。

LocalDate localDate = LocalDate.of(2019, Month.JUNE, 15)

现在,将 LocalDate 调整到该月的上一日;

LocalDate day = localDate.with(TemporalAdjusters.lastDayOfMonth());

然后使用TemporalAdjusters 类来调整此日期。TemporalAdjusters.firstDayOfMonth() 方法将日期设置为月份的第一天,而TemporalAdjusters.lastDayOfMonth() 方法将其设置为最后一天。最后,TemporalAdjusters.firstDayOfNextMonth() 将日期调整到下一月的第一天。打印每个调整后的日期以显示这些操作的结果。

更新于: 2024年8月8日

2K+ 阅读量

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告