List 转换地图<;关键、价值>;列出<;价值>;

List 转换地图<;关键、价值>;列出<;价值>;,list,dictionary,dart,flutter,type-conversion,List,Dictionary,Dart,Flutter,Type Conversion,我已经找了一段时间没有成功。我正在尝试将地图转换为列表(放弃键) 当然可以 var additionList=new List(); dataMan.forEach((字符串日期,AddictionDay-day){ 成瘾列表。添加(天); }); 但是有没有更直接的方法,比如 var additionList=dataMan.toList(); ? map的map功能似乎没有多大帮助,因为它只接受MapEntry作为参数,所以它是不可行的。很奇怪以前没人问这个问题 我也在考虑新的类扩展Ma

我已经找了一段时间没有成功。我正在尝试将地图转换为列表(放弃键)

当然可以

var additionList=new List();
dataMan.forEach((字符串日期,AddictionDay-day){
成瘾列表。添加(天);
});
但是有没有更直接的方法,比如

var additionList=dataMan.toList();
?

map的
map
功能似乎没有多大帮助,因为它只接受
MapEntry
作为参数,所以它是不可行的。很奇怪以前没人问这个问题

我也在考虑新的类扩展Map,但现在我只是在研究一些本机方法来实现这一点,如果它存在的话。

Map类有一个属性,它将Map条目作为一个iterable返回,您可以使用该函数来生成所需的项列表

var addictionList = dataMan.entries.map((MapEntry mapEntry) => mapEntry.value).toList();

mapEntry.key
String
的类型,而
mapEntry.value
AddictionDay

的类型,您需要这个还是更复杂的

  var _map = {1: 'one', 2: 'two', 3: 'three'};
  var values =_map.values.toList();
  print(values);
结果:


[one,two,three]

.map返回未定义.toList的map,并且.map需要MapEntry作为参数。。我缺少什么?错误:返回类型“AddictionDay”不是匿名闭包定义的“MapEntry”。错误:没有为类“Map”定义方法“toList”。您应该包括显示“dataMan”声明的代码。我使用
List AddiconList=List.from(dataMan.entries.Map((MapEntry MapEntry)=>MapEntry.value.toList())获得它因为它返回了我无法显式重铸到列表的列表