Ich habe eine String
Array:Sortierung ein Array von String mit benutzerdefinierten Bestellung
String[] str = {"ab" , "fog", "dog", "car", "bed"};
Arrays.sort(str);
System.out.println(Arrays.toString(str));
Wenn ich Arrays.sort
verwenden, ist die Ausgabe:
[ab, bed, car, dog, fog]
Aber ich brauche die folgende Reihenfolge zu implementieren:
FCBWHJLOAQUXMPVINTKGZERDYS
Ich denke, ich muss ich plement Comparator
und compare
Methode überschreiben:
Arrays.sort(str, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
// TODO Auto-generated method stub
return 0;
}
});
Wie soll ich über die Lösung dieses gehen?
Zunächst sollten Sie ein Zeichenarray verwenden, wenn Ihre Elemente immer ein Zeichen lang sind. Die Verwendung von Zeichenfolgen erzwingt mehr Fehlerprüfung. –
@DuncanJones Nein, das sind sie nicht, das war nur ein Beispiel. Ich habe sie geändert. Danke – Sam
@Sam: Also muss jedes einzelne Zeichen in der Zeichenfolge nach der Reihenfolge sortiert werden und dann gelten "normale" Zeichenfolgenregeln? Wie wird "AA" relativ zu "A" sortiert? Oder "FC" relativ zu "FB"? –