Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter “错误”;类型';字符串';不是类型为';int';“铸入式”;当尝试在flatter中将字符串转换为int时_Flutter_Dart_Google Cloud Firestore - Fatal编程技术网

Flutter “错误”;类型';字符串';不是类型为';int';“铸入式”;当尝试在flatter中将字符串转换为int时

Flutter “错误”;类型';字符串';不是类型为';int';“铸入式”;当尝试在flatter中将字符串转换为int时,flutter,dart,google-cloud-firestore,Flutter,Dart,Google Cloud Firestore,我收到了这个错误d[error:flatter/lib/ui/ui\u dart\u state.cc(177)]未处理的异常:当我试图将字符串转换为int时,类型“String”不是类型cast中类型“int”的子类型 QuerySnapshot result = await firestore.collection("video").get() result.docs.forEach((element) { var ID = element.data().v

我收到了这个错误
d[error:flatter/lib/ui/ui\u dart\u state.cc(177)]未处理的异常:当我试图将字符串转换为int时,类型“String”不是类型cast中类型“int”的子类型

QuerySnapshot result = await firestore.collection("video").get()

result.docs.forEach((element) {
      var ID = element.data().values.elementAt(4) // the element at this position is an ID

 });

我已经尝试了很多方法,将此值转换为int,如:

int value = int.parse(ID));

但不管我怎么尝试,只要给mt同样的错误,
非常提前感谢

看起来
ID
已经是
integer
了,不需要进行类型转换。尝试
int value=ID

看起来问题出在数据来自何处,即firestore api

发生的情况是,当您使用get()从数据库获取数据时,信息如下所示[userName,email,ID],但当您关闭应用程序,再次打开并尝试重新调用这些信息时,它可以如下所示:[userName,ID,email]


我真的不知道为什么会这样,也不知道如何解决它。但是我将尝试过滤来自请求的数据

ID是否只包含整数?打印(ID)
的结果是什么?它打印一个“数字”,可能只是字符串中的一个数字。我需要比较两个数字,所以我需要将这个字符串转换为intIt返回“类型'string'不是类型转换中类型'int'的子类型”
int value = ID as int;