当前位置: 首页 > 面试题库 >

如何从Java枚举中获取价值

蒲昊
2023-03-14
问题内容

我有一个枚举,看起来像:

public enum Constants{
  YES("y"), NO("N")
  private String value;

  Constants(String value){
    this.value = value;
  }
}

我有一个看起来像的测试班

public class TestConstants{
 public static void main(String[] args){
   System.out.println(Constants.YES.toString())
   System.out.println(Constants.NO.toString())
 }
}

输出为:

YES
NO

代替

Y
N

我不确定这里出什么问题了吗??


问题答案:

您需要 重写toString枚举的方法:

public enum Constants{
    YES("y"), NO("N")

    // No changes

    @Override
    public String toString() {
        return value;
    }
}


 类似资料:
  • 问题内容: 我在Java中有一个枚举: 我想按索引访问枚举值,例如 我该怎么办? 问题答案: 试试这个

  • 我应该工作,对吧?但它不是!!!!它告诉我dbValue可以转换为RelationActiveEnum...

  • 问题内容: 说我有一个枚举 并且我想找到一个字符串的枚举值,例如它将是。这怎么可能呢? 是我需要的方法吗?如果是这样,我将如何使用它? 问题答案: 是的,会给你的。 请注意,该名称必须是精确匹配,包括大小写:与两抛出。 静态方法和是在编译时创建的,不会出现在源代码中。但是,它们确实出现在中。例如,显示两种方法。

  • 问题内容: 我遇到了这个问题,我不知道需要迭代其实际值的实际类型。 任何想法如何从enumValue中提取其可能的值? 问题答案:

  • 假设我有这样的枚举 我也有一个类,我想扩展有序[SimpleEnum] 所以在SimpleClass中,我只需要获取附加到相应SimpleEnum val的值。 在java中,我能够声明一个变量的枚举和访问一个实际的值对应于它的这个var,在scala我正在寻找一种方法来获取枚举的实例,并接触到它的值。

  • 问题内容: 我试图从原始值获取枚举类型: 但是似乎对于带空格的字符串不起作用: 任何建议如何获得它? 问题答案: 太复杂了,只需将原始值直接分配给案例 如果案例名称与原始值匹配,您甚至可以忽略它 在Swift 3+中,所有枚举都是