Hallo,
Ich möchte eine Liste mit Modellen sortieren. Und zwar eigentlich aufsteigend von A-Z.
Bei den meisten Automarken wie VW, Ford, Seat funktioniert es schon sehr gut! Hier meine compareTo im "Modell" - model:
Hiermit wird es bei BMW leider verkehrt angezeigt:
116,118,120, 1er-Reihe, 220, 225, 2er-reihe
Ich benötige es genau umgekehrt:
1er-Reihe, 116, 118, 120, 2er-reihe, 220, 225
Bei Mercedes ist es genau so, ich möchte statt:
a 140, a 150, a 160, a-klasse
die Sortierung ebenfalls umgekehrt:
a-klasse, a 140, a 150, a 160
Bis jetzt lasse ich die Modelllisten von BMW und Mercedes umgekehrt ausgeben:
Aber nun kommt nun die Modellsortierung richtig, dafür die allgemeine Sortierung verkehrt:
8er reihe, 840, 850, 7er reihe, 740,...
kann mir hier bitte jemand weiter helfen?
mfg, Traxx
Ich möchte eine Liste mit Modellen sortieren. Und zwar eigentlich aufsteigend von A-Z.
Bei den meisten Automarken wie VW, Ford, Seat funktioniert es schon sehr gut! Hier meine compareTo im "Modell" - model:
Java:
@Override
public int compareTo(Object o) {
Modell mo = (Modell) o;
return this.getMoBez().compareTo(mo.getMoBez());
}
116,118,120, 1er-Reihe, 220, 225, 2er-reihe
Ich benötige es genau umgekehrt:
1er-Reihe, 116, 118, 120, 2er-reihe, 220, 225
Bei Mercedes ist es genau so, ich möchte statt:
a 140, a 150, a 160, a-klasse
die Sortierung ebenfalls umgekehrt:
a-klasse, a 140, a 150, a 160
Bis jetzt lasse ich die Modelllisten von BMW und Mercedes umgekehrt ausgeben:
Java:
@Override
public int compareTo(Object o) {
Modell mo = (Modell) o;
if(mo.getMarke().getMkId() == 20 || mo.getMarke().getMkId() == 3){
return mo.getMoBez().compareTo(this.getMoBez());
}
else{
return this.getMoBez().compareTo(mo.getMoBez());
}
}
Aber nun kommt nun die Modellsortierung richtig, dafür die allgemeine Sortierung verkehrt:
8er reihe, 840, 850, 7er reihe, 740,...
kann mir hier bitte jemand weiter helfen?
mfg, Traxx
Zuletzt bearbeitet von einem Moderator: