1、编写一个程序,实现以下要求,根据运行时提供的参数(格式为”yyyy-MM-dd”),输出其对应的星期次序,例如,输出2007-09-7,输出2007-09-7是星期5。
时间: 2024-11-25 22:18:13 浏览: 14
为了编写一个程序,你可以使用Java日期处理类`java.time.LocalDate`。首先需要导入必要的包,并创建一个函数来计算给定日期对应的是星期几。下面是一个简单的示例:
```java
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class DateToWeekday {
public static void main(String[] args) {
String inputDate = "2007-09-07";
LocalDate date = convertToDate(inputDate);
int dayOfWeek = date.getDayOfWeek();
String weekDayName = getWeekDayName(dayOfWeek);
System.out.println("输入的日期 " + inputDate + " 是 " + weekDayName);
}
// 将字符串转换为LocalDate
private static LocalDate convertToDate(String dateString) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
return LocalDate.parse(dateString, formatter);
}
// 获取并返回英文名称的星期几
private static String getWeekDayName(int dayOfWeekIndex) {
switch (dayOfWeekIndex) {
case 1:
return "星期日";
case 2:
return "星期一";
case 3:
return "星期二";
case 4:
return "星期三";
case 5:
return "星期四";
case 6:
return "星期五";
case 7:
return "星期六";
default:
throw new IllegalArgumentException("无效的星期数");
}
}
}
```
在这个例子中,`convertToDate`方法将输入的日期字符串解析成`LocalDate`对象,然后`getWeekDayName`函数会根据索引返回相应的英文星期名称。
如果你想要运行这个程序,只需复制上述代码到一个名为`DateToWeekday.java`的文件中,然后通过`javac`编译并运行`main`方法。
阅读全文