如何从枚举类型的属性文件中读取值?

dku*_*mar 5 java enums properties

我有一个枚举如下:

public enum EnvironmentType {PRODUCTION, TEST, DEVELOPMENT}
Run Code Online (Sandbox Code Playgroud)

在属性文件中,键值如下:

app.environmentType = TEST
Run Code Online (Sandbox Code Playgroud)

我们知道当我使用key读取属性文件中的值时,它会像String一样返回

String envType = properties.getProperty("app.environmentType");
Run Code Online (Sandbox Code Playgroud)

我的要求是,

EnvironmentType envType = EnvironmentType.TEST;
Run Code Online (Sandbox Code Playgroud)

现在我想知道有没有办法将值作为enum类型?我怎么能parsecast它?

Jig*_*shi 5

EnvironmentType envType =   EnvironmentType.valueOf(envTypeString);
Run Code Online (Sandbox Code Playgroud)

  • 请注意,如果 `envTypeString` 包含与枚举常量之一不对应的内容,这将抛出一个 `IllegalArgumentException` - 这就是您可以检查该值是否有效的方法。 (4认同)