localdate 取上月
时间: 2025-03-11 18:14:46 浏览: 19
### 使用 `LocalDate` 获取上个月的日期
为了获取给定日期所在月份的第一天并调整到前一个月,可以利用 Java 的 `TemporalAdjusters` 类来简化操作。下面是一个具体的例子:
```java
import java.time.LocalDate;
import java.time.temporal.TemporalAdjusters;
public class PreviousMonthExample {
public static void main(String[] args) {
LocalDate currentDate = LocalDate.now();
LocalDate firstDayOfCurrentMonth = currentDate.with(TemporalAdjusters.firstDayOfMonth());
LocalDate firstDayOfPreviousMonth = firstDayOfCurrentMonth.minusMonths(1);
System.out.println("First day of the current month: " + firstDayOfCurrentMonth); // 输出当前月第一天
System.out.println("First day of the previous month: " + firstDayOfPreviousMonth); // 输出上个月第一天
}
}
```
如果目标是获得上个月的最后一日,则可以在上述基础上稍作修改,通过调用 `lastDayOfMonth()` 方法实现这一需求[^1]。
对于更复杂的场景或者需要频繁进行时间计算的情况,建议深入研究 `java.time` 包下的其他类如 `YearMonth`, 这些工具能提供更加便捷的方式来进行年份和月份级别的运算[^2]。
阅读全文
相关推荐


















