Int): Int = x - y } object Desc extends Ordering[Int] { def compare(x: Int, y: Int): Int = y - x } def main() = { val list = List(3, 1, 2) given ord: Ordering[Int] = Desc // ここで切り替え println(list.sorted) // 3,2,1 }
String) case class SeiMei(sei: String, mei: String) type Sei = { val sei: String } type Mei = { val mei: String } type Name = FirstLast | SeiMei | (Sei & Mei)