prefer_ final_ in_ for_ each
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.