Flutter 转换列表子类型
Posted
技术标签:
【中文标题】Flutter 转换列表子类型【英文标题】:Flutter Convert List subtype 【发布时间】:2020-10-03 08:17:31 【问题描述】:我想将子类型列表转换为另一个子类型,我该怎么做?
List<type1> someList = new List<type1>();
我想将此列表转换为
List<type2> someList = new List<type2>();
我的两个模型都有相同的字符串,这可能吗?我试试这个
List<type2> tList = new List();
for (int i = 0; i < snapshot.data.length; i++)
tList.add(snapshot.data[i]);
错误:
type 'type1' is not a subtype of type 'type2'
【问题讨论】:
这能回答你的问题吗? Getting type 'List<dynamic>' is not a subtype of type 'List<...>' error in JSON 【参考方案1】:final someList = <TypeA>[];
final convertedList = List<TypeB>.from(someList);
一个简单的例子是:
final numList = <num>[1, 2];
final intList = List<int>.from(numList);
如果您的num
包含double
,您可能会遇到错误,在这种情况下,您可以使用map
:
final numList = <num>[1, 2.0];
final intList = numList.map((e) => e.toInt()).toList();
【讨论】:
对不起它不只是列表..它的动态列表 然后检查this以上是关于Flutter 转换列表子类型的主要内容,如果未能解决你的问题,请参考以下文章
Flutter:类型“bool”不是类型转换中“RxBool”类型的子类型
Flutter [错误:flutter/lib/ui/ui_dart_state.cc(177)] 未处理的异常:类型“int”不是类型转换中“String”类型的子类型
Flutter 在 ListView 返回类型 String 中显示嵌套 json 不是类型转换中类型“Map<String, dynamic>”的子类型