Flutter 慎用的forEach循环

Posted 安果移不动

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flutter 慎用的forEach循环相关的知识,希望对你有一定的参考价值。

  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
 

以上是关于Flutter 慎用的forEach循环的主要内容,如果未能解决你的问题,请参考以下文章

MyBatis批量插入几千条数据,请慎用foreach

MyBatis批量插入几千条数据,请慎用foreach

MyBatis批量插入几千条数据,请慎用foreach

MyBatis批量插入几千条数据,请慎用foreach

MyBatis批量插入几千条数据,请慎用foreach

MyBatis批量插入几千条数据,请慎用foreach