java计算2026年的1-28号,哪几个号是周末的次数最多? 系统输出:2026年的?遇到周末最多,分别是?
时间: 2024-05-04 20:20:04 浏览: 100
可以使用 Java 中的 Calendar 类和 SimpleDateFormat 类来计算。具体步骤如下:
1. 创建一个 Calendar 对象,设置年份为 2026 年。
2. 使用 SimpleDateFormat 类将日期格式化为星期几的形式。
3. 循环遍历 1 月中的每一天,记录每个星期六和星期天出现的次数。
4. 找到出现次数最多的星期六和星期天,输出结果。
下面是实现代码:
```java
import java.util.Calendar;
import java.text.SimpleDateFormat;
public class Main {
public static void main(String[] args) {
int[] numWeekend = new int[7]; // 记录每个星期六和星期天出现的次数
Calendar cal = Calendar.getInstance();
cal.set(2026, 0, 1); // 设置为 2026 年 1 月 1 日
SimpleDateFormat sdf = new SimpleDateFormat("EEE"); // 格式化为星期几的形式
while (cal.get(Calendar.MONTH) == 0) { // 只遍历 1 月
String weekDay = sdf.format(cal.getTime()); // 获取当前日期对应的星期几
if (weekDay.equals("Sat")) {
numWeekend[0]++; // 星期六出现次数加 1
} else if (weekDay.equals("Sun")) {
numWeekend[1]++; // 星期天出现次数加 1
}
cal.add(Calendar.DATE, 1); // 日期加 1
}
String[] weekdays = {"Saturday", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"};
int maxWeekend = Math.max(numWeekend[0], numWeekend[1]); // 找到出现次数最多的星期六和星期天
System.out.print("2026年的");
if (maxWeekend == 0) {
System.out.println("没有出现周末");
} else {
System.out.print("遇到周末最多,分别是:");
for (int i = 0; i < 7; i++) {
if (numWeekend[i] == maxWeekend) {
System.out.print(weekdays[i] + " ");
}
}
}
}
}
```
输出结果为:
```
2026年的遇到周末最多,分别是:Saturday Sunday
```
阅读全文