用Java 1、编写一个程序,实现以下要求,根据运行时提供的参数(格式为”yyy-MM-dd”), 输出其对应的星期次序,例如,输出2007-09-7,输出2007-09-7是星期5.
时间: 2024-10-22 13:25:21 浏览: 15
在Java中,你可以创建一个简单的程序来实现这个功能,使用`java.time.LocalDate`类来获取给定日期所属的星期。首先,需要导入必要的包并创建一个函数来计算星期:
```java
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class Main {
public static void main(String[] args) {
if (args.length != 1) {
System.out.println("Usage: java Main <date in format 'yyyy-MM-dd'>");
return;
}
String inputDate = args[0];
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date = LocalDate.parse(inputDate, formatter);
int dayOfWeekIndex = date.getDayOfWeek().getValue(); // Sunday is 1, Saturday is 7
System.out.printf("%s 是星期%d", inputDate, dayOfWeekIndex == 7 ? 6 : dayOfWeekIndex); // 因为中国的习惯,把周日作为一周的第一天
}
}
```
在这个程序中,我们首先检查命令行参数是否只提供了一个日期,然后解析输入的字符串为`LocalDate`对象。接着,我们获取该日期所在的星期,并将索引转换为星期几(在中国,周日通常表示为1)。最后,输出相应的星期数。
如果你想运行这个程序,可以在命令行中输入类似于 `java Main 2007-07` 的格式。
阅读全文