内容

prefer_final_in_for_each

如果引用未重新分配,则首选在 for-each 循环变量中使用 final。

此规则适用于 Dart 2.1 及更高版本。

此规则有一个 快速修复 可用。

详细信息

#

**执行** 首选将 for-each 循环变量声明为 final,如果它们在代码中的后面没有重新分配。

尽可能地将 for-each 循环变量声明为 final 是一种良好的实践,因为它有助于避免意外重新分配,并允许编译器进行优化。

错误

dart
for (var element in elements) { // LINT
  print('Element: $element');
}

正确

dart
for (final element in elements) {
  print('Element: $element');
}

正确

dart
for (var element in elements) {
  element = element + element;
  print('Element: $element');
}

用法

#

要启用 prefer_final_in_for_each 规则,请在 analysis_options.yaml 文件中的 **linter > rules** 下添加 prefer_final_in_for_each analysis_options.yaml 文件

analysis_options.yaml
yaml
linter:
  rules:
    - prefer_final_in_for_each