无效赋值
类型为 '{0}' 的值不能赋值给类型为 '{1}' 的变量。
描述
#当赋值给变量的表达式的静态类型无法赋值给该变量的类型时,分析器会产生此诊断消息。
示例
#以下代码会产生此诊断消息,因为初始化器 (int
) 的类型无法赋值给变量 (String
) 的类型
dart
int i = 0;
String s = i;
常见修复方法
#如果赋的值在运行时总是可赋值的,尽管静态类型未反映这一点,那么添加一个显式类型转换。
否则,更改赋的值使其具有预期的类型。在上面的示例中,可能看起来像这样:
dart
int i = 0;
String s = i.toString();
如果无法更改值,则更改变量的类型以与赋的值的类型兼容
dart
int i = 0;
int s = i;