我有一个枚举如下:
public enum EnvironmentType {PRODUCTION, TEST, DEVELOPMENT}
属性文件中的键值如下:
app.environmentType = TEST
我们知道当我使用key从属性文件中读取值时,它将返回String,如
String envType = properties.getProperty("app.environmentType");
我的要求是,
EnvironmentType envType = EnvironmentType.TEST;
现在我想知道有没有办法让价值为enum
类型?我该如何parse
或cast
呢?
答案 0 :(得分:3)
EnvironmentType envType = EnvironmentType.valueOf(envTypeString);
答案 1 :(得分:3)
您可以使用valueOf
方法,如下所示:
String envTypeStr = properties.getProperty("app.environmentType");
EnvironmentType envType = EnvironmentType.valueOf(envTypeStr);
静态方法valueOf()
和values()
是在编译时创建的,不会出现在源代码中。但它们出现在java库中的某些创建文档中。例如,请参阅SortOrder
和Normalizer.Form