我有下面的映射,它表示桩和距离:Map<PostModel, double> 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);