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

根据枚举值执行操作

厍兴腾
2023-03-14

我正在尝试根据枚举值检索一个值。基本上,假设我有以下枚举:

    private enum Auth{

    KEY, PASSWORD, MAIL;    

    public String get(){
        return "";
    }
}

通过执行auth.key.get()将返回“MyKey”,而auth.mail.get()将返回“MyMail”。我搜索了一下,但没有找到答案,我之前没有尝试过任何事情,因为我完全不知道如何开始。谢谢,祝你有个愉快的一天

共有1个答案

周苑博
2023-03-14

虽然我强烈建议不要使用下面的机制从枚举值获得一些简单的东西,比如硬编码的String,而是使用它来关联特定的行为,比如java.util.concurrent.TimeUnit中的行为,但这是可以实现的:

private enum Auth {

    KEY {
        public String get() {
            return "mykey";
        } 
    },

    PASSWORD {
        public String get() {
            return "mypassword";
        } 
    },

    MAIL {
        public String get() {
            return "mymail";
        } 
    };

    public abstract String get();

}
 类似资料:
  • 使用上面的代码,我可以根据枚举值获取字段的值。现在如何设置字段的基于值例如:如果被选中,那么我需要设置到输入值。

  • 我有这个枚举(我使用的是TypeScript): 我想在我的表单中构建一个select,每个选项的值为enum整数值,标签为enum文本,如下所示: 我该怎么做?

  • 枚举具有名为'hash value'的属性,该属性是枚举内的索引。

  • 我正在使用Jackson的ObjectMapper直接从收到的构建我的。为此,我用注释来注释我的字段(在本例中,字段是抽象方法,因为我使用AutoValue来简化样板文件)。 现在,我的POJO中的一些字段是,其中JSON显然包含一个常规字符串。我想以某种方式验证,在构建对象之前,这些JSON字段确实提交给给定的枚举类型。 下面是一个例子。 此属性的类型为,对应的JSON字段为ie.“Messag

  • 问题内容: 我想知道是否有任何方法可以为不同的类订购枚举。例如,如果我有一组固定的化学物质,它们以不同的方式与其他化学物质发生反应,有些反应强烈,有些反应微弱。我基本上希望能够根据组应该对之反应的化学物质(即取决于类别)来切换它们的排列顺序。我确实知道我应该使用Comparable,但是我不确定该怎么做。如果我不够清楚,请发表评论,我将作进一步解释。 谢谢。 所以我看起来像这样,我已经知道每种化学

  • 问题内容: 我有一个枚举的类对象(我有一个),我需要获取此枚举表示的枚举值的列表。该静态函数有我需要什么,但我不知道怎么去从类对象访问它。 问题答案: