如何在开关盒中使用枚举

Sree:

我正在尝试检查VO中设置了哪些值。

以下是我的故事。我收到“ 合格案例标签MyEnum.UserType.DOCTORS必须替换为不合格枚举常量DOCTORS

请帮助我确定我在做什么错。

MyEnum.java

public MyEnum{
    private UserType userType;

    public UserType getUserType(){
        return userType;
    }

    public void setUserType(UserType userType){
        this.userType = userType;
    }

    public static enum UserType{
        DOCTORS("D"),
        PATIENT("P"),
        STAFF("S");
    }

}

EnumTest.java

public EnumTest {

    .....
    public void onGoBack(MyEnum myEnum) {

        switch(myEnum.getUserType())
        {
            case UserType.DOCTORS: // this shows "The qualified case label MyEnum.UserType.DOCTORS must be replaced with the unqualified enum constant DOCTORS"
                break;

        }
    }

}
马特·鲍尔:

由于编译器知道您在switch语句中评估的枚举类型,因此应按照错误提示(在您的情况下:)删除“ qualified”部分,MyEnum.UserType.而只需使用“ unqualified” enum即可DOCTORS见下文:

switch(myEnum.getUserType())
{
    case DOCTORS: 
        break;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章