positiv
compareTo()
Für alle Objekte funktioniert compareTo()
in der Weise, wie der Vergleich von Zahlen in der gebräuchlichen Arithmetik.
Hier sind ein paar Regeln.
Die meisten davon sind ziemlich klar, wenn wir über Zahlen nachdenken.
Angenommen, dass A
, B
und C
Integer
sind.
Wenn A.compareTo(B) > 0
, dann ist B.compareTo(A) < 0
.
Wenn A.compareTo(B) > 0
und B.compareTo(C) > 0
,
dann ist A.compareTo(C) > 0
.
Wenn A.compareTo(B) == 0
,
dann sollte A.compareTo(Z)
und B.compareTo(Z)
zu dem gleichen Ergebnis führen, unabhängig davon, was Z
enthält.
Die Klassen, die mit Java kommen, befolgen diese Regeln.
Wenn wir eine Klasse schreiben, die Comparable
implementiert,
müssen wir diese Regeln befolgen.
Das ist nicht so schwierig,
da die meisten sinnvollen compareTo()
Methoden das normalerweise tun.
Angenommen, dass X.compareTo(Y) == 0
ist.
Ist es dann wahr, dass X.equals(Y)
?