用java创建一个表示是星期几的枚举类型Weekday,用户从键盘输入星期几的英文字符串,输出这是一周中的第几天(星期天是一周中的的第一天)
时间: 2023-05-23 17:03:25 浏览: 82
好的,让我帮您写一个实现枚举类型 Weekday 的 Java 代码:
```
import java.util.Scanner;
enum Weekday {
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY;
}
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入星期几的英文字符串(首字母大写):");
String weekdayStr = input.nextLine();
input.close();
try {
Weekday weekday = Weekday.valueOf(weekdayStr);
int dayNum = weekday.ordinal() + 1;
if (dayNum == 1) {
System.out.println("这是一周中的第七天");
} else {
System.out.println("这是一周中的第" + dayNum + "天");
}
} catch (IllegalArgumentException e) {
System.out.println("输入的字符串不是有效的星期几");
}
}
}
```
这段代码中定义了一个枚举类型 Weekday,包括星期日到星期六七个常量值。然后从键盘读取输入的字符串,通过 valueOf 方法将其转换为相应的枚举值,再通过其 ordinal 方法获取枚举值在枚举类型中的序号,加 1 就是这一天是一周中的第几天。值得注意的是,枚举类型中的序号是从 0 开始的,所以需要加上 1。如果输入的字符串不是有效的星期几,则会报错提示。
阅读全文