In Sammlung Rahmen Ich bin mir bewusst Vergleichbare einzelne Sortierreihenfolge während bietet Komparator mehrere Sortierreihenfolge Aber ich bin nicht in der Lage zu verstehen, wie eine Schnittstelle modifiziert stellt die Originaldaten, während der andere nicht?warum Vergleichbare die Originaldaten ändern, während Komparator nicht in Sammlung Rahmen hat
-2
A
Antwort
2
Comparable
nichts tut, dann ist es eine Schnittstelle. Es zwingt Ihr Objekt, die Methode 'compareTo' zu implementieren. Dadurch kann das Objekt mit einem anderen Objekt verglichen werden. https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html
Comparator
nichts tut, dann ist es eine andere Schnittstelle. Es zwingt Ihr Objekt, die Methode 'compare' zu implementieren. Dadurch kann das Objekt zwei andere Objekte vergleichen. Beachten Sie den Unterschied: Vergleichen und vergleichen. https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html
Dieser Link erklärt die Schnittstellen von Object Ordering sehr, sehr gut. Mit Beispielen und allem. https://docs.oracle.com/javase/tutorial/collections/interfaces/order.html
Was macht denken Sie Vergleichbare die Originaldaten verändert? Beziehen Sie sich auf eine bestimmte Sortiermethode? – Eran
es tut mir leid, aber können Sie bitte erklären, in einer richtigen Art und Weise ..? –
keiner von ihnen ändert nichts (zumindest sollten sie nicht), nur sagen, welches Objekt "größer" ist und welches "kleiner" ist. Wenn ein 'Comparator' oder' compareTo() 'ein Objekt modifiziert, ist es fehlerhaft –