我正在尝试分配一个int
值,但是,出现此错误:
A value of type 'int?' can't be assigned to a variable of type 'int'
导致此编译时错误的行如下:
int number = someFunction();
答案 0 :(得分:0)
这里的问题是从someFunction
返回的值是可空的,并试图将该值分配给 非-可空的变量是编译时错误(在Dart 2.7
中引入了空安全性)。
您需要使用!= null
条件检查是否为空。
void exampleFunction<T>(T? input) {
T result = input; // <- ERROR here
print(result);
}
在此示例中,input
是可空的,因此无法分配给 不可-可空变量{{1} }。
给定的示例问题可以这样解决:
result