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

如何从Java中的字符串值获取枚举值?

孔皓
2023-03-14
问题内容

说我有一个枚举

public enum Blah {
    A, B, C, D
}

并且我想找到一个字符串的枚举值,例如"A"它将是Blah.A。这怎么可能呢?

Enum.valueOf()我需要的方法吗?如果是这样,我将如何使用它?


问题答案:

是的,Blah.valueOf("A")会给你的Blah.A

请注意,该名称必须是精确匹配,包括大小写:Blah.valueOf("a")Blah.valueOf("A ")两抛出IllegalArgumentException

静态方法valueOf()values()是在编译时创建的,不会出现在源代码中。但是,它们确实出现在Javadoc中。例如,Dialog.ModalityType显示两种方法。



 类似资料:
  • 问题内容: 我定义了以下枚举 现在的印刷价值是 相反,我想打印枚举的值 要实现此功能可以做些什么? 问题答案: 您正在打印枚举 对象 。如果只想打印该属性,请使用该属性: 请参阅 对枚举成员及其属性 的 编程访问权限 部分 : 如果您有枚举成员并需要其名称或值: 如果只需要提供自定义字符串表示形式,则可以向枚举添加方法: 演示:

  • 问题内容: 我有一个枚举,看起来像: 我有一个看起来像的测试班 输出为: 代替 我不确定这里出什么问题了吗?? 问题答案: 您需要 重写枚举的方法:

  • 我定义了以下枚举 现在打印值为 相反,我想打印枚举的值 可以做什么来实现这个功能?

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

  • 问题内容: 我觉得这是一个简单的问题,但是我尝试过的所有事情都不适合我。我有一个枚举,我有字符串构造函数的原因是因为Java不允许枚举为数字..我在没有字符串构造函数的情况下直接尝试了AA,AB,2C,但这给出了错误。请注意,对于现有的枚举,我要添加C(“ 2C”)。 现在我有一个mybatis映射器,它会进行合并,这是现有的,并且映射器的参数之一是TestEnum。到目前为止,由于枚举值和字符串

  • 我有一个typescript中的枚举,它有20个字段。我有一个UI应用程序,用户可以将信息放在一些自由文本中(例如,让我们说用户喜欢的颜色)。我的要求是获取这些颜色信息并致电中层服务。midtier服务将Color定义为Enum,与UI枚举定义保持同步。我需要将用户输入文本转换为枚举(在前端),因为在构建过程中会引发编译问题。我没有找到执行转换的方法(例如,从用户输入字符串到特定枚举元素)。任何指