目录

prefer_final_in_for_each

如果 for-each 循环变量的引用没有被重新赋值,则应首选 final。

此规则自 Dart 2.1 起可用。

此规则有可用的快速修复

不兼容规则:unnecessary_final

详情

#

应该首选将 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
yaml
linter:
  rules:
    - prefer_final_in_for_each