java - 从枚举名称的字符串文字返回枚举值列表

标签 java reflection enums

假设我有一个带有值的字符串

'Language'

我有一个名为 Language 的枚举

enum Language{
    English,
    Spanish,
    French
}

有没有办法使用字符串“Language”并返回枚举语言的值。我基本上想知道是否有一种方法可以通过传入字符串来获取枚举语言的实例。有点像

Class.forName()

但对于枚举。

最佳答案

枚举是一个类,因此使用完全限定名称(例如 "com.mydomain.myapp.Language" )您可以从 Class.forName 获得枚举的类.从那里,您可以在 Class 对象上使用反射:getEnumConstants给你所有的枚举值,如果你想要名字,你可以使用 .name在枚举对象上。

关于java - 从枚举名称的字符串文字返回枚举值列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11784353/

相关文章:

java - 如何比较两个数组字符串的每个位置

java - Couchbase SDK 3.0 从 java 启用/禁用刷新选项

java - 在 maven 插件中扫描 java 类路径

c# - 使用反射 (DotNET) 在程序集中查找所有命名空间

c++ - C++ MFC 中未初始化枚举的值

typescript - 在 for in 循环中丢失枚举类型信息

java - 1 个 ItemReader、2 个 SQL 查询、jdbcTemplate?

java - Java 中的 dmp 文件?

java - 参数为可变参数时的 Class.getMethod

java - 在内存方面对许多常量使用枚举是否有效?