Flutter 省道地图<;后模型,双>;分类

Flutter 省道地图<;后模型,双>;分类,flutter,dart,Flutter,Dart,我有以下表示柱子和距离的地图:map products={} 我希望按照其值按升序对地图进行排序,但: products.values.toList().sort(); 不起作用,地图保持不变。PostModel是不可比较的,也不可排列的,多个Post可以具有相同的距离。 最后,地图看起来像: {(post1, 100),(post2, 100),(post3, 30),(post4,450),(post5,450)....} 您可以尝试以下方法: final sortedValues

我有以下表示柱子和距离的地图:
map products={}
我希望按照其值按升序对地图进行排序,但:

products.values.toList().sort();
不起作用,地图保持不变。PostModel是不可比较的,也不可排列的,多个Post可以具有相同的距离。 最后,地图看起来像:

{(post1, 100),(post2, 100),(post3, 30),(post4,450),(post5,450)....}

您可以尝试以下方法:

  final sortedValues =
      products.entries.toList()
        ..sort((key1, key2) =>
          key1.value.compareTo(key2.value)
        );
  products = Map.fromEntries(sortedValues);
  print(products);

你也可以考虑这个包:SORTEDMAP在这里不起作用,因为POST模型是不可比的。它不可能像一个魔咒一样工作,tks,在这里学到了一些非常有趣的方法,很高兴它对你有用。如果你愿意,也请投赞成票。