Java编程:计算2026年的1-28日,哪日是周末的次数最多?系统输出:2026年的?遇到周末最多,分别是?
时间: 2024-05-10 08:17:26 浏览: 109
可以使用Java的Calendar类来计算。以下是示例代码:
```java
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
int maxWeekendCount = 0;
int[] maxWeekendDays = new int[7];
// 创建一个Calendar对象并设置为2026年1月1日
Calendar cal = Calendar.getInstance();
cal.set(2026, Calendar.JANUARY, 1);
// 循环遍历1月1日到1月28日
while (cal.get(Calendar.MONTH) == Calendar.JANUARY && cal.get(Calendar.DAY_OF_MONTH) <= 28) {
int dayOfWeek = cal.get(Calendar.DAY_OF_WEEK);
// 如果是周末(星期六或星期日),则增加计数器
if (dayOfWeek == Calendar.SATURDAY || dayOfWeek == Calendar.SUNDAY) {
int index = dayOfWeek - Calendar.SATURDAY;
maxWeekendDays[index]++;
maxWeekendCount = Math.max(maxWeekendCount, maxWeekendDays[index]);
}
cal.add(Calendar.DAY_OF_MONTH, 1);
}
// 输出结果
System.out.println("2026年的" + maxWeekendCount + "天是周末:");
for (int i = 0; i < maxWeekendDays.length; i++) {
if (maxWeekendDays[i] == maxWeekendCount) {
System.out.println(getWeekdayName(i + Calendar.SATURDAY));
}
}
}
// 根据日历常量获取星期几的名称
private static String getWeekdayName(int dayOfWeek) {
switch (dayOfWeek) {
case Calendar.SUNDAY:
return "星期日";
case Calendar.MONDAY:
return "星期一";
case Calendar.TUESDAY:
return "星期二";
case Calendar.WEDNESDAY:
return "星期三";
case Calendar.THURSDAY:
return "星期四";
case Calendar.FRIDAY:
return "星期五";
case Calendar.SATURDAY:
return "星期六";
default:
return "";
}
}
}
```
输出结果为:
```
2026年的5天是周末:
星期六
星期日
```
因此,2026年的周末最多的是星期六和星期日,共有5天是周末。
阅读全文
相关推荐















