2
我偶爾發現自己想要一個非常簡單的Ordering [A],這個類沒有排序。通常是一個元組或一個類的字段的投影。下面的類似乎這樣做一般斯卡拉派生的訂單?
case object Ord {
case class DerivedOrdering[A,B](fn : B=>A)(implicit o : Ordering[A]) extends Ordering[B] {
def compare(a:B, b:B) = o.compare(fn(a), fn(b))
}
}
我還沒有在scala庫中看到它。它在什麼地方?
用法
Ord.DerivedOrdering[Int, (Int, List[Int])](_._1)
給出由整數上(中等,列表[INT])排序的排序。
漂亮。我不知道那是存在的。 –