prefer_final_in_for_each
如果 for-each 循环变量的引用未被重新赋值,则**建议**使用 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
规则与以下规则不兼容
启用
#要启用 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
如果您改为使用 YAML 映射语法来配置 linter 规则,请在 linter > rules 下添加 prefer_final_in_for_each: true
analysis_options.yaml
yaml
linter:
rules:
prefer_final_in_for_each: true
除非另有说明,否则本网站上的文档反映的是 Dart 3.7.1 版本。页面上次更新于 2025-03-07。 查看源代码 或报告问题。