当前位置: 首页 > 知识库问答 >
问题:

如何检查枚举值并返回相应的枚举

宗政洋
2023-03-14

我的模式如下

"statusCode": {  
            "type": "string",
            "enum": ["A", "T", "U"]
        }

我正在尝试编写一个方法来检查代码并返回相应的枚举。

private void updateStatusCode(Event event) {
        Enum code = null;
        switch(event.getStatusCode()) {
            case A:
            code = ["A"];
            break;
            case T:
            break;
            case U:
            break;
            default:

        }
         return code;

    }

event.getStatusCode的有效值是:A,T,U。现在我需要检查这些代码并根据代码返回枚举。我尝试了上面的方法,但它给我代码=["A"]的错误。下面是错误状态。

Syntax error on token "=", Expression expected after this token

我该怎么解决这个问题?我是java新手。非常感谢您的帮助,谢谢

共有1个答案

充高扬
2023-03-14

您似乎对枚举在Java中的工作方式感到困惑。枚举基本上是一个已知值的列表,可以分配给枚举类的实例。它包含了根据经常需要从/转换为字符串的方法。枚举是它们中的超类,但是您通常不需要直接使用它。

例如,假设我有以下定义:

enum StatusCode {
 A,
 T,
 U
}

这意味着类StatusCode的对象只能具有值ATU。要转换,我将使用:

String fromString = "A";
StatusCode sc = StatusCode.valueOf(fromString); //gives sc = StatusCode.A
String backToString = sc.name(); //gives backToString = "A"

在这里了解更多信息:https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html

 类似资料:
  • 问题内容: 我想声明一个枚举Direction,它具有一个返回相反方向的方法(以下语法不正确,即,不能实例化枚举,但它说明了我的观点)。这在Java中可行吗? 这是代码: 问题答案: 对于那些按标题吸引的人:是的,您可以在枚举中定义自己的方法。如果您想知道如何调用这种非静态方法,则可以使用与其他任何非静态方法相同的方法- 在定义或继承该方法的类型实例上调用它。如果是枚举,则此类实例仅为s。 因此,

  • 问题内容: 在Java中,我有: 我希望本机方法“ nativeGetStatus”返回此枚举值。 JNI返回整数并与java中的enum的值进行比较是一个选项,但是想知道是否可以通过jobject返回值并将其直接分配给state吗?如果是,怎么办? 问题答案: 当然可以。枚举值是Enum类的公共静态字段,因此您可以使用此官方手册编写代码。只需从JNI获取字段并将其作为jobject返回即可。

  • 问题内容: 我想知道是否有可能枚举返回的行。不根据任何列的内容,而只是产生一个连续的整数索引。例如 将返回一些内容: 它用于https://data.stackexchange.com/ 问题答案: 尝试:

  • 问题内容: 我想知道在Java中是否可以嵌套枚举。 在这里,我想做的是: 拥有一个由CAT和DOG组成的物种,将允许我访问可用CAT和DOG品种的子枚举。例如,我希望能够测试是否装有CAT或DOG,以及动物是否是PERSAN CAT或PITBULL狗。CAT和DOG品种必须是不同的枚举,即CatBreeds枚举和DogBreeds枚举。 这是我要使用的访问模式的示例: 种类: 物种 种狗 品种: