要实现这个需求,我们可以利用 Java 的 java.time
包,特别是 LocalDate
和 Period
类,来处理日期和时间的计算。
代码
以下是一个示例代码,展示了如何根据输入的月份数计算开始时间和结束时间:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class DateRangeCalculator {
public static void main(String[] args) {
int months = 12; // 输入的月份数
calculateDateRange(months);
}
public static void calculateDateRange(int months) {
// 获取当前日期
LocalDate endDate = LocalDate.now();
// 根据输入的月份数计算开始日期
LocalDate startDate = endDate.minusMonths(months);
// 定义日期格式
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-M");
// 格式化开始日期和结束日期
String formattedStartDate = startDate.format(formatter);
String formattedEndDate = endDate.format(formatter);
// 打印结果
System.out.printl