Die Aufgabe
Übung 11-1-4 (PC)
Schreiben Sie zwei Methoden
public void sortierenDeutsch()
public void sortierenEnglisch()
die den Array der Vokabel-Objekte nach den deutschen bzw. englischen Begriffen aufsteigend sortieren.
Lösungshinweise
Sie haben in der Folge 8 die drei primitiven Sortierverfahren kennengelernt.
Das Sortieren von int-Zahlen in einem Array ist natürlich einfacher als das Sortieren von Vokabel-Objekten. Sie müssen sich vorher intensiv mit der Klasse String auseinandersetzen, vor allem mit der Frage, wie kann man zwei Strings vergleichen? Wie bekommt man heraus, welcher String "kleiner" und welcher "größer" ist? Gehen Sie dazu auf den Lexikon-Eintrag über Strings und lesen Sie sich die verschiedenen Methoden, die in Frage kommen, durch.
Zum Sortieren selbst können Sie dann den einfachsten Algorithmus wählen, also den Bubblesort.
Testprogramm
public class Testklasse { private Vokabelliste liste; public Testklasse() { liste = new Vokabelliste(); liste.hinzufuegen("Hund","dog"); liste.hinzufuegen("Katze","cat"); liste.hinzufuegen("Schwein","pig"); liste.hinzufuegen("Kuh","cow"); liste.hinzufuegen("Ratte","rat"); liste.hinzufuegen("Aal","eel"); liste.hinzufuegen("Fisch","fish"); liste.hinzufuegen("Esel","donkey"); liste.hinzufuegen("Affe","monkey"); liste.anzeigen(); System.out.println("\nSortieren nach deutschen Begriffen..."); liste.sortierenDeutsch(); liste.anzeigen(); System.out.println("\nSortieren nach englischen Begriffen..."); liste.sortierenEnglisch(); liste.anzeigen(); } }
Mit dem obigen Testprogramm können Sie die Vokabelliste testen, ohne dass Sie in der BlueJ-Umgebung ständig neue Vokabeln eintippen müssen.
Zunächst legt das Testprogramm eine neue leere Vokabelliste an, dann werden neun Vokabeln hinzugefügt und ausgegeben. Danach erfolgt der eigentliche Test der beiden Sortieren-Methoden.