prefer_
                  Prefer final in for-each loop variable if reference is not reassigned.
Details
#DO prefer declaring for-each loop variables as final if they are not reassigned later in the code.
Declaring for-each loop variables as final when possible is a good practice because it helps avoid accidental reassignments and allows the compiler to do optimizations.
BAD:
for (var element in elements) { // LINT
  print('Element: $element');
}
GOOD:
for (final element in elements) {
  print('Element: $element');
}
GOOD:
for (var element in elements) {
  element = element + element;
  print('Element: $element');
}
Incompatible rules
#The prefer_final_in_for_each lint is incompatible with the following rules:
Enable
#
                  To enable the prefer_final_in_for_each rule, add prefer_final_in_for_each under
                  linter > rules in your analysis_options.yaml
                   file:
                
linter:
  rules:
    - prefer_final_in_for_each
                  If you're instead using the YAML map syntax to configure linter rules,
                  add prefer_final_in_for_each: true under linter > rules:
                
linter:
  rules:
    prefer_final_in_for_each: true
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Report an issue.