Flutter 地图<;字符串,字符串>;论点
我正在尝试将Flutter 地图<;字符串,字符串>;论点,flutter,dart,data-structures,Flutter,Dart,Data Structures,我正在尝试将映射参数指定给双精度。如果那是我必须要做的。我不知道如何使用这种参数类型。这是: await sheet.values.map.column(3) 我用它通过gsheets从谷歌表单中提取第3列及其所有值。这是一场噩梦。。。有人知道有没有别的方法可以叫专栏吗?或者有没有办法将映射转换为只包含列中的值的单个字符串?在本例中,它们是经度或纬度的坐标值。我试图调用这些值来在谷歌地图中绘图。以下是我的其余代码: Iterable markers = []; var latstr = (s
映射
参数指定给双精度
。如果那是我必须要做的。我不知道如何使用这种参数类型。这是:
await sheet.values.map.column(3)
我用它通过gsheets从谷歌表单中提取第3列及其所有值。这是一场噩梦。。。有人知道有没有别的方法可以叫专栏吗?或者有没有办法将映射转换为只包含列中的值的单个字符串?在本例中,它们是经度或纬度的坐标值。我试图调用这些值来在谷歌地图中绘图。以下是我的其余代码:
Iterable markers = [];
var latstr = (sheet.values.map.column(3)); //latitude
var lngstr = (sheet.values.map.column(4)); //longitude
List<dynamic> names = [];
List<double> lat = [];
List<double> lng = [];
for (var i = 0; i < 10; i++) {
names.add(latstr);
lat.add(parse(await sheet.values.map.column(3)); //<--- I have no idea what I'm doing here. Trying to convert to double. very confused.
lng.add(await sheet.values.map.column(4));
}
正如wait sheet.values.map.column(4)
中所说的那样,map
,但是lng
是列表
,因此只能向其添加双精度,但您正试图为map
签名,这会导致错误
//try this to map the map into a map of doubles (mapception), if your okey with using Map instead of a list
Map<double,double> m = (await sheet.values.map.column(4)).map((key, value)=> MapEntry(double.parse(key), double.parse(value)));
//如果您同意使用map而不是list,请尝试将map映射为double映射(maception)
Map m=(wait sheet.values.Map.column(4)).Map((key,value)=>MapEntry(double.parse(key),double.parse(value));
如果parse遇到的字符不是数字,它将抛出,您一定遇到了错误。你能在你的问题中包括这一点吗?变量表是从哪里来的?什么类型?@neuromancer我添加了信息。“我用过gsheet库。@贾格拉杰·辛格是的,先生。刚才加的。提前谢谢。我刚刚了解到我可以将其剪切为列表字符串,如下所示:wait sheet.values.column(2)仍然需要尽可能将其用作double。位置:LatLng(m,m2))参数类型Map double double不能指定给参数类型double:/n不是,这只是一个简短的飞镖代码,让你在问另一个问题时感到困惑。谢谢你的帮助,明白了。你说得对。我的错误是没有在m/m2之后添加第二个参数:位置:LatLng(m[“test”],m2[“test”]),
//try this to map the map into a map of doubles (mapception), if your okey with using Map instead of a list
Map<double,double> m = (await sheet.values.map.column(4)).map((key, value)=> MapEntry(double.parse(key), double.parse(value)));