我有一个枚举,如下所示:
public enum EnumClass {
ValOne("ValOne."), ValTwo("ValTwo."), valone("ValOne"), valtwo("ValTwo."), ValThree("ValThree"), ValFour("ValFour"), ValFive("ValFive"), ValSix("ValSix");
private String enumValue;
private EnumClass(String value) {
this.enumValue = value;
}
@Override
public String toString() {
return this.enumValue;
}}
我在用
org.apache.commons.lang3.EnumUtils..isValidEnum(EnumClass, stringValue)
我使用枚举值而不是枚举类的名称
(例如:“ValTwo。”而不是枚举“ValTwo”)
当我检查给定的字符串值是否等于枚举值时,它总是检查名称枚举对象(是。“ValTwo”)而不是 Enum.toString。我的印象是它检查值而不是枚举对象本身。
奇怪的行为是,最初当我测试代码时,它检查的是值而不是名称。但是,在重建应用程序后,它正在检查名称。没有进行可能影响更改的代码更改。
任何投入将不胜感激。
提前致谢!!