[英]Java Lookup Enum By String Value
我有一個枚舉
public enum Blah {
A, B, C, D
}
我想找到一個字符串的枚舉值,例如“ A”就是Blah.A。 怎么可能做到這一點?
Enum.valueOf()
是我需要的方法嗎? 如果是這樣,我將如何使用它?
您應該使用Blah.valueOf("A")
這將給您Blah.A
您在valueOf
方法中傳遞的參數應與Enum
之一匹配,否則它將引發異常。
public Blah blahValueOf(String k) {
for (Blah c : Blah.values()) {
if (c.getLabel().toUpperCase().equals(k.toUpperCase())) {
return c;
}
}
return null;
}
您可以編寫此方法以便找到Blah.valueOf()
。
您可以使用.valueOf方法。 例如
public class EnumLoader {
public static void main(String[] args) {
DemoEnum value = DemoEnum.valueOf("A");
System.out.println(value);
}
}
enum DemoEnum{
A,B,C;
}
如果要訪問Enum類的值,則應使用valueOf
方法。
valueOf(argument)
->將返回特定於參數的Enum值。
System.out.println(Blah.valueOf("A"));
記住一點,如果該參數不存在於Enum類中,您將面臨java.lang.IllegalArgumentException:沒有枚舉常量
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.