java枚举类怎么键盘输入
时间: 2024-05-08 10:22:27 浏览: 119
可以通过`Scanner`类来实现键盘输入枚举类型。下面是一个示例代码:
```java
import java.util.Scanner;
public class EnumInputExample {
enum Weekday {
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Please enter a weekday: ");
String input = scanner.nextLine().toUpperCase();
Weekday weekday = Weekday.valueOf(input);
System.out.println("You entered " + weekday);
}
}
```
在这个示例中,我们先定义了一个枚举类型`Weekday`,然后通过`Scanner`类从键盘读取用户输入的字符串,将其转换为大写字母,最后使用`valueOf()`方法将其转换为对应的枚举常量。如果用户输入的字符串不是枚举类型中的常量,则会抛出`IllegalArgumentException`异常。
相关问题
java中,枚举类型可以从键盘上输入嘛?
可以,可以通过Scanner类的next()或nextLine()方法读取键盘输入,然后使用valueOf()方法将输入的字符串转换为对应的枚举常量。例如:
```
Scanner scanner = new Scanner(System.in);
String inputStr = scanner.nextLine();
MyEnum myEnum = MyEnum.valueOf(inputStr);
```
Java创建一个用表示季节的枚举类型Season,用户从键盘输入1~4之间的整数(包含1和4),输入对应的季节。
代码如下:
```java
import java.util.Scanner;
public enum Season {
SPRING, SUMMER, AUTUMN, WINTER;
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int number = scanner.nextInt();
switch (number) {
case 1:
System.out.println(Season.SPRING);
break;
case 2:
System.out.println(Season.SUMMER);
break;
case 3:
System.out.println(Season.AUTUMN);
break;
case 4:
System.out.println(Season.WINTER);
break;
default:
System.out.println("Invalid input, please enter a number between 1 and 4.");
}
}
}
```
使用枚举类型Season表示季节。在main方法中,使用Scanner类读取用户输入的整数。根据输入的整数,使用switch语句输出对应的季节。
注意,枚举类型Season必须写在单独的java文件中,不能在main方法所在的类中定义。
阅读全文