У меня есть список простых экземпляров класса case scala, и я хочу напечатать их в предсказуемом, лексикографическом порядке с помощью list.sorted
, но получить "No implicit Ordering defined for...".
Существует ли неявный, который обеспечивает лексикографическое упорядочение для классов case?
Существует ли простой идиоматический способ смешения лексикографического упорядочения в класс case?
scala> case class A(tag:String, load:Int)
scala> val l = List(A("words",50),A("article",2),A("lines",7))
scala> l.sorted.foreach(println)
<console>:11: error: No implicit Ordering defined for A.
l.sorted.foreach(println)
^
Я не доволен "взломом":
scala> l.map(_.toString).sorted.foreach(println)
A(article,2)
A(lines,7)
A(words,50)