java如何判断一个字符串在不在一个枚举中
时间: 2024-02-24 14:54:06 浏览: 351
在Java中,可以使用Enum.valueOf()方法来判断一个字符串是否在一个枚举中。该方法接受两个参数:枚举的Class类型和待判断的字符串。如果该字符串在枚举中存在,该方法将返回对应的枚举常量,否则将抛出IllegalArgumentException异常。
例如,假设有一个枚举类型Season,包括四个枚举常量:SPRING, SUMMER, AUTUMN, WINTER。现在需要判断一个字符串是否在该枚举类型中,可以使用以下代码:
```
public enum Season {
SPRING, SUMMER, AUTUMN, WINTER;
}
public static boolean isInEnum(String value) {
try {
Season season = Season.valueOf(value);
return true;
} catch (IllegalArgumentException e) {
return false;
}
}
public static void main(String[] args) {
System.out.println(isInEnum("SPRING")); // true
System.out.println(isInEnum("SUMMER")); // true
System.out.println(isInEnum("AUTUMN")); // true
System.out.println(isInEnum("WINTER")); // true
System.out.println(isInEnum("SUMM")); // false
}
```
在上述代码中,isInEnum()方法接受一个字符串作为参数,通过调用Season.valueOf()方法来判断该字符串是否在Season枚举中存在。如果存在,则返回true,否则返回false。在main()方法中,我们测试了一些字符串,包括枚举中的常量和不在枚举中的字符串,输出结果符合预期。
阅读全文