TreeSet anhand eines Integer Wertes sortieren


#1
Hallo,

ich hab ein TreeSet mit Objekten,die u.a. einen integerWert haben und anhand dieses Integerwertes möchte ich das TreeSet sortieren. TreeSet braucht mindestens eine Überschriebene compareTo Methode oder einen Comparator.

Java:
@Override
    public int compareTo(Tile t) {
        return this.f.compareTo(t.f);
    }
funktioniert nicht.

Auch das verschieben der indicis hat nicht wirklich funktioniert also sowas in der Art:

if(this.wert > t.wert) return 1;
...

Wie sortiert man hier richtig ich komm nicht drauf erbitte Hilfe.

Gruß Federhalter
 
#2
Kleiner Nachtrag:
Es geht um den A* Algorithmus. Der evaluiert bei mir 8 Knoten mit f-werten, das sind die zu sortierenden Integer Werte. Ich brauche also immer möglichst schnell von acht möglichen Knoten zur Laufzeit den mit dem geringsten Integer Wert. Momentan verwende ich noch eine ArrayList und sortiere die von Hand und das geht bei meinen Vorhaben mit Pathfinding irgendwann zu langsam, d.h. das Programm ruckelt und zuckelt was das Zeug hält. Ich könnte klar auch ein Double statt eines Integer nehmen aber wäre das dann insgesamt schneller oder eher langsamer?
 

melmager

Erfahrenes Mitglied
#4
Allerdings wenn ich etwas länger drüber nachdenke:
mach doch ne Classe die TreeNode implementiert die intern deine ArrayList hat.
Über DefaultMutableTreeNode wird das Vorhaben nicht gehen.
 

Neue Beiträge