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 map 語法來配置 linter 規則,請在 linter > rules 下新增 prefer_final_in_for_each: true
analysis_options.yaml
yaml
linter:
rules:
prefer_final_in_for_each: true