for_in_of_invalid_type
'for' 循环中使用的类型“{0}”必须实现“{1}”。
描述
#分析器在 for-in 循环中 in
后面的表达式类型不是 Iterable
的子类时,会生成此诊断。
示例
#以下代码会生成此诊断,因为 m
是一个 Map
,而 Map
不是 Iterable
的子类
dart
void f(Map<String, String> m) {
for (String s in m) {
print(s);
}
}
常见修复
#将表达式替换为生成可迭代值的表达式
dart
void f(Map<String, String> m) {
for (String s in m.values) {
print(s);
}
}