如何将XML枚举与Java枚举进行比较?

时间:2014-01-13 12:44:29

标签: java enums

有人知道如何比较以下两个枚举吗?

test.XMLResponseType.SUCCESS
@XmlEnumValue(value="Success")

public enum JavaResponseType{
SUCCESS,FAIL
}

我有一个来自网络服务的响应,它返回成功/失败标记,如

public static final enum test.ResponseType SUCCESS;
 @javax.xml.bind.annotation.XmlEnumValue(value="Success")

public static final enum test.ResponseType FAIL;
 @javax.xml.bind.annotation.XmlEnumValue(value="Fail")

我在我的java代码中实现了成功/失败常量,如

public enum JavaResponseType{
SUCCESS,FAIL
}

现在我想比较两种类型之间的成功/失败,就像我在这里提到的那样。 有没有办法相互比较,或者我应该改变我的实施?

3 个答案:

答案 0 :(得分:0)

if (enum1.name().equalsIgnoreCase(enum2.name())) {
    //do your stuff
}

if (JavaResponseType.SUCCES.name().equalsIgnoreCase(enum1.name())) {
    //do your stuff
}

答案 1 :(得分:0)

您可以使用字符串值进行比较,例如num1.name()。equals(enum.name())

答案 2 :(得分:0)

添加与特定枚举进行比较的方法,如下所示

public enum JavaResponseType {
    SUCCESS, FAIL;

    boolean compareWithEnum2(test.XMLResponseType value) {
                  return name().equalsIgnoreCase(value.name());
    }

}