使用java计算某年某月有几天。其中判别闰年的条件是: 能被4整除但不能被100整除的年是闰年,能被400整除的年也是闰年。(要求年月值是通过输入产生)
时间: 2024-09-20 17:06:11 浏览: 57
在Java中,我们可以创建一个简单的函数来计算给定年份和月份的天数。这里是一个示例方法,它会根据输入的年份和月份来判断并返回该月的天数:
```java
import java.util.Calendar;
public class DayCalculator {
public static int calculateDays(int year, int month) {
Calendar calendar = Calendar.getInstance();
calendar.set(year, month - 1, 1); // 减一是因为日历从0开始计数,一月是0
// 判别闰年
if (isLeapYear(year)) {
switch (month) {
case 1: // 二月,闰年29天
return 29;
default:
return calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
}
} else {
// 根据非闰年的规则
switch (month) {
case 2: // 二月,平年28天
return 28;
default:
return calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
}
}
}
private static boolean isLeapYear(int year) {
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
public static void main(String[] args) {
int inputYear = <用户输入的年份>;
int inputMonth = <用户输入的月份>;
int daysInMonth = calculateDays(inputYear, inputMonth);
System.out.println("The number of days in " + inputYear + " " + inputMonth + " is " + daysInMonth);
}
}
```
用户需要在`main`方法中替换`<用户输入的年份>`和`<用户输入的月份>`。这个程序首先检查是否是闰年,然后根据月份给出相应的天数。
阅读全文