用Java数组实现1年12月各月的天数,并进行输出
时间: 2024-10-12 08:04:50 浏览: 26
在Java中,我们可以创建一个动态数组或者使用ArrayList来存储一年12个月的天数,因为每个月的天数并不固定,闰年和平年的天数有所差异。这里我们假设默认每个非闰年的月份有30天,而2月有28天。对于闰年,2月会有29天。以下是简单的示例:
```java
import java.util.ArrayList;
public class MonthDays {
private static final int[] DEFAULT_DAYS = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; // 默认非闰年的天数
public static void main(String[] args) {
ArrayList<Integer> monthDays = new ArrayList<>();
for (int i = 0; i < 12; i++) {
if (isLeapYear() && i == 1) { // 检查是否为闰年并更新2月的天数
monthDays.add(29);
} else {
monthDays.add(DEFAULT_DAYS[i]);
}
}
// 输出每月的天数
for (int i = 0; i < 12; i++) {
System.out.println("Month " + (i+1) + ": " + monthDays.get(i));
}
}
private static boolean isLeapYear() {
return (new GregorianCalendar().get(Calendar.YEAR) % 4 == 0 && new GregorianCalendar().get(Calendar.YEAR) % 100 != 0) || new GregorianCalendar().get(Calendar.YEAR) % 400 == 0;
}
}
```
在这个例子中,我们首先定义了一个静态数组`DEFAULT_DAYS`表示平年的天数,然后通过循环和判断闰年来调整2月份的天数。最后遍历数组并打印出每个月的天数。
阅读全文