Umbenennung extends Comparable[A]
zu extends Ordered[A]
und Umbenennung def compareTo
zu def compare
genug oder gibt es etwas, um das ich mich kümmern sollte?Wie konvertiert man eine Klasse, die java.lang.Comparable implementiert, um Scala.Ordered zu implementieren?
4
A
Antwort
7
Sie haben Recht, das ist alles, was Sie tun müssen. Die anderen Methoden in Ordered
ihre Standardimplementierungen verwenden, die wie folgt gehen:
def < (that: A): Boolean = (this compare that) < 0
def > (that: A): Boolean = (this compare that) > 0
def <= (that: A): Boolean = (this compare that) <= 0
def >= (that: A): Boolean = (this compare that) >= 0
def compareTo(that: A): Int = compare(that)
Das einzige, was nicht eine Standardimplementierung in Ordered
hat sich vergleichen, die Sie definieren werde Ihre alte compareTo
Methode . Sollte funktionieren, vorausgesetzt, das oben Gesagte ist, was Sie für Ihre anderen Vergleiche wollen.
Großartig, danke! – soc