有没有办法在排序时为打破平局提供多个键?

时间:2016-11-01 03:47:36

标签: sorting rust

是否有任何内置方法可以提供多个关键字来打破平局?类似的东西:

vec.sort_by_key(|k| foo(k), bar(k));

foo(k)是第一个键,bar(k)是第二个(打破平局)键?

1 个答案:

答案 0 :(得分:5)

您可以使用元组:

vec.sort_by_key(|k| (foo(k), bar(k)));

0到12个字段的元组实现Ord