Supportnet / Forum / Skripte(PHP,ASP,Perl...)
Sortieren von LinkedList
Frage
Wie kann ich eine LinkedList von Punkten in Java sagen wir nach XKoordinate sortieren lassen?
Antwort 1 von Rangoo
Hallo auch.
Wenn deine Punkte Comparable implementieren, kannst du Collections.sort benutzen. Wenn nicht, musst du dir einen Comparator schreiben, der die Punkte auf ihre x-Koordinaten vergleicht und übergibst den Comparator mit an die sort-Methode.
Collections.sort(List<T> list)
Collections.sort(List<T> list, Comparator<? super T> c)
Interface Comparator<T>
Wenn deine Punkte Comparable implementieren, kannst du Collections.sort benutzen. Wenn nicht, musst du dir einen Comparator schreiben, der die Punkte auf ihre x-Koordinaten vergleicht und übergibst den Comparator mit an die sort-Methode.
Collections.sort(List<T> list)
Collections.sort(List<T> list, Comparator<? super T> c)
Interface Comparator<T>
Antwort 2 von UZUZ
Vielen Dank für die zügige Antwort
Ich bin gerade dabei den Comparator für Point zu implementieren. Ich stecke dabei aber fest.
Mein Programm ist ungefähr so strukturiert
public interface Comparator <Point >
public int compare ( Point 01, Point 02) ...
public int equals ( Point point)....
Stimmt das so?
Ich bin gerade dabei den Comparator für Point zu implementieren. Ich stecke dabei aber fest.
Mein Programm ist ungefähr so strukturiert
public interface Comparator <Point >
public int compare ( Point 01, Point 02) ...
public int equals ( Point point)....
Stimmt das so?
Antwort 3 von Rangoo
Hallo,
Comparator ist ein Interface, entsprechend sollte die Klasse, die es implementiert, bspw. so aussehen:
Comparator ist ein Interface, entsprechend sollte die Klasse, die es implementiert, bspw. so aussehen:
public class PointComparator implements Comparator<Point> {
public int compare (Point x, Point y) {
return x.getX() - y.getX(); // hier muss der richtige Zugriff auf die x-Koordinate hin
}
}
