我使用 SortedMap
如下:
class Cls
val m = SortedMap[Long, Cls]()
def m = {
val v = m.max._1 //no implicit ordering defined for (Long, Cls)
//do some with it
}
使用键排序(在我的例子中为Long
)为Map
定义Ordering
的惯用方法是什么?
最佳答案
使用Ordering.by根据函数 T => S
和 Ordering[S]
创建一个 Ordering[T]
。
Ordering.by((t: (Long, Cls)) => t._1)
将根据元组的第一个字段为您提供排序。 Ordering[Long] 是隐式可用的,因此无需显式提供它。
关于scala - scala 中的 Tuple_2 按键排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42909808/