好的,下面是一个满足以上要求的示例程序:
import java.time.LocalDate;
import java.util.Scanner;
public class FebruaryDays {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 输入年份
System.out.print("请输入年份:");
int year = scanner.nextInt();
// 计算二月份天数
int februaryDays = getFebruaryDays(year);
System.out.println(year + "年的2月有" + februaryDays + "天。");
// 计算2024年2月1日到今天的天数
LocalDate startDate = LocalDate.of(2024, 2, 1);
LocalDate endDate = LocalDate.now();
int daysBetween = getDaysBetween(startDate, endDate);
System.out.println("从2024年2月1日到今天,已经过去了" + daysBetween + "天。");
scanner.close();
}
// 计算二月份天数
public static int getFebruaryDays(int year) {
LocalDate date = LocalDate.of(year, 2, 1);
return date.lengthOfMonth();
}
// 计算两个日期之间的天数
public static int getDaysBetween(LocalDate startDate, LocalDate endDate) {
return Math.abs(startDate.until(endDate).getDays());
}
}
程序中使用了Java 8中提供的日期时间类`LocalDate`来进行日期相关计算。`getFebruaryDays()`方法根据输入的年份获取该年二月份的天数,使用了`lengthOfMonth()`方法。`getDaysBetween()`方法通过`until()`方法计算两个日期之间的天数差。最后,在`main()`方法中调用这两个方法进行计算并输出结果。
希望对你有帮助!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |