enum ServerEnv { ONLINE, PRE, QA, DEV, QA2 }
static ServerEnv getEnvByCode(int code) {
ServerEnv.values.forEach((env) {
if (env != null && env.index == code) {
return env;
}
});
return ServerEnv.QA;
}
上面写的 forEach但是呢 不能真的退出
我们写下测试用例
void main() {
var envByCode = ServeEnvUtils.getEnvByCode(4);
print("----------");
print(envByCode);
}
返回结果
----------
ServerEnv.QA
这里4是对应的QA2哦。。
所以正解应当是使用普通的for循环
static ServerEnv getEnvByCode(int code) {
for (var env in ServerEnv.values) {
if (env != null && env.index == code) {
return env;
}
}
return ServerEnv.QA;
}
输出
----------
ServerEnv.QA2