gpt4 book ai didi

java - 从控制台获取枚举类型的输入

转载 作者:行者123 更新时间:2023-12-01 08:01:29 25 4
gpt4 key购买 nike

如何从控制台获取 java 中 enum 类型的输入?

我有这门课:

class enumTest {

public enum Color {
RED, BLACK, BLUE
}

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
Color color = input.readLine();

public static void main (String[]args) {

switch (color) {
...

在这一行Color color = input.readLine();我收到一个错误,内容如下:

incompatible types: String cannot be converted to Color

我该如何解决这个问题?

最佳答案

每个枚举都有一个 automatically generated静态valueOf解析字符串的方法。所以你可以使用:

String colorName = input.readLine();
Color color = Color.valueOf(colorName);

但是,如果给定名称没有任何对应的枚举值,这将引发异常。您可能想创建一个 Map<String, Color> (在Color内或单独)以便您可以更优雅地处理这个问题。

关于java - 从控制台获取枚举类型的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24992493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com