gpt4 book ai didi

Java 将 Select 转换为 Enum

转载 作者:行者123 更新时间:2023-11-30 11:04:46 27 4
gpt4 key购买 nike

在简单的代码中,我正在尝试使用 enum 而不是 select 例如我想转换此代码:

switch (name) {
case "1":
return "a";
break;
case "2":
return "b";
case "3":
return "c";
}

枚举为:

public enum ContentTypes {
FREE("1"),
PAYABLE("2"),
INCOME("3");

private String name;
ContentTypes(String name) {
this.name = name;
}
public String getName() {
return name;
}
}

public String getType(String type) {
return (ContentTypes) type.getName();
}

问题是 ContentTypes 内容是值。例如

String test = "FREE";
getType(test);

最佳答案

您自动声明的每个 enum 类型都会获得一个内置的静态 valueOf() 方法。您还可以使用静态 Enum.valueOf() 方法。

String name = "FREE";
ContentTypes t = ContentTypes.valueOf(name);

// or

ContentTypes t = Enum.valueOf(ContentTypes.class, name);

如果我了解您的要求,您可以在这些 API 调用之一上构建您的解决方案。请注意,这些方法区分大小写,如果 name 与枚举常量不匹配,将抛出 IllegalArgumentException

关于Java 将 Select 转换为 Enum,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29888972/

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