Gliederung sortieren

Charriu

Mitglied
Hallo,

Ich habe ein Problem: In einer Liste sind viele Elemente. Diese Elemente sind wild durcheinander und müssen sortiert werden. Die Sortierung kann anhand der Gliederung vorgenommen werden.

Die Gliederung hat folgende Form:
Code:
1
1.1
1.2
1.2.1
1.3

So soll es dann auch sortiert aussehen.
Im Moment sortiere ich die Liste mit Collections.sort(list); Das funktioniert auch recht gut, jedoch bekomme ich Probleme wenn Zahl größer als 9 wird.

Dann kommt da folgendes raus:
Code:
1
1.1
1.10
1.11
1.2
...
1.9

Wie kann man den diese Sortierung lösen? Wäre für jeden Tipp dankbar.

Gruß,
Charriu
 
Hi Charriu,
Ich nehme an Du sortierst nach ganzen Strings, zumindest ist dies ein typisches Problem. Du möchstest nicht nach den Asycii sondern nach den numerischen Werten sortieren. Baue Dir doch einen Comparator, der die einzelnen Zahlenabschnitte Deiner Gliederung auseinanderpflückt und diese dann nummerisch vergleicht z.B. als int.

viel Erfolg

Takidoso
 
Zuletzt bearbeitet:
Zurück