使用switch-case语句。输入一个年份和月份,判断是否是闰年,显示该年月对应的天数
时间: 2024-09-18 10:05:25 浏览: 73
switch_java_switch-case_例题_
`switch-case` 语句是一种条件语句,在 Java 中用于根据表达式的值执行一段或多段代码中的一个分支。在这里,我们可以创建一个 `switch` 语句来根据输入的年份和月份来判断是否为闰年,并输出相应月份的天数。
首先,我们需要定义一个闰年的规则。通常,闰年是指能被4整除但不能被100整除的年份,除非它也能被400整除。接下来,我们会编写一个函数来处理这个逻辑:
```java
public class LeapYearDays {
public static void main(String[] args) {
int year = 2024; // 假设用户输入的年份
int month = 2; // 假设用户输入的月份,范围从1到12
if (month < 1 || month > 12) {
System.out.println("无效的月份");
return;
}
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
System.out.printf("%d年%2d月有31天\n", year, month);
break;
case 2: // February is special for leap years
if (isLeapYear(year)) {
System.out.printf("%d年是闰年,2月有29天\n", year);
} else {
System.out.printf("%d年不是闰年,2月有28天\n", year);
}
break;
default:
System.out.println("错误的月份");
}
}
// 判断是否为闰年
private static boolean isLeapYear(int year) {
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
}
```
在这个例子中,我们先检查月份是否有效。如果是闰年二月(即2月),则调用 `isLeapYear` 函数进行判断。其他非二月的情况直接输出对应月份的固定天数。
阅读全文