for_in_with_const_variable
for-in 循环的变量不能是 'const'。
描述
#当 for-in 循环中声明的循环变量被声明为 const
时,分析器会生成此诊断。该变量不能是 const
,因为其值无法在编译时计算。
示例
#以下代码会产生此诊断,因为循环变量 x
被声明为 const
dart
void f() {
for (const x in [0, 1, 2]) {
print(x);
}
}
常见修复方法
#如果存在类型标注,则从声明中移除 const
修饰符。
如果不存在类型,则将 const
修饰符替换为 final
、var
或添加类型标注。
dart
void f() {
for (final x in [0, 1, 2]) {
print(x);
}
}