Dart-如何对地图进行排序';钥匙

Dart-如何对地图进行排序';钥匙,dart,Dart,我对Dart中地图键的排序有疑问 Map Map=newmap(); 如何在地图中对键进行排序?或者对Iterable map.keys进行排序。如果您想要一个已排序的映射键列表: var sortedKeys = map.keys.toList()..sort(); 您可以选择将自定义排序函数传递给List.sort方法 最后,我建议使用Map而不是Map?在Dart中,它被称为: 导入“省道:集合”; main(){ 最终八字树地图st= SplayTreeMap(); st[“yyy”

我对Dart中地图键的排序有疑问

Map Map=newmap();

如何在地图中对键进行排序?或者对Iterable map.keys进行排序。

如果您想要一个已排序的映射键列表:

var sortedKeys = map.keys.toList()..sort();
您可以选择将自定义排序函数传递给
List.sort
方法

最后,我建议使用
Map
而不是
Map

在Dart中,它被称为:

导入“省道:集合”;
main(){
最终八字树地图st=
SplayTreeMap();
st[“yyy”]={“应该是”:“第三”};
st[“zzz”]={“应该是”:“最后”};
st[“aaa”]={“应该是”:“第一”};
st[“bbb”]={“应该是”:“第二”};
for(st.keys中的最终字符串键){
打印(“$key:${st[key]}”);
}
}
//输出:
//aaa:第一
//bbb:2
//yyy:3
//zzz:最后一次

我知道我的答案太晚了,但看看我发现了什么。。可能会帮助某人


此软件包有助于以排序方式维护对象地图。

谢谢您的建议!注意一行程序
map.keys.toList().sort()
。为了保持一致,应该使用级联样式,如在
map.keys.toList()…sort()
中。错误为['should be']:没有为类“Object”定义方法“[]”。@Julien这是哪个版本的dart?用于dart 1.0dart 2的latestIt从今天起似乎在DartPad()上正常工作。我不理解这个
SplayTreeMap
示例的用例。最初的问题是对
地图的键进行排序;
Map
的值是随机访问的,因此获取键的
列表并对其进行排序应该足以获得相同的结果。