Letzte Aktion in einem Texteditor rückgängig machen
Viele Texteditoren erlauben es, durch Änderungen rückwärts zu navigieren und fehlende Wörter bei Bedarf einzufügen. Mit ListIterator kannst du eine Liste von Aktionen rückwärts durchlaufen und bei Bedarf Korrekturen einfügen.
In dieser Übung durchläufst du eine Liste von Wörtern rückwärts. Wenn du "error" findest, fügst du davor correction ein, um eine Rückgängig-Aktion in einem Texteditor zu simulieren.
Diese Übung ist Teil des Kurses
<Kurs>Ein-/Ausgabe und Streams in Java</Kurs>Übungsanweisungen
- Erstelle ein
ListIterator-Objekt für die ListetextHistoryund starte am Ende. - Prüfe, ob in der Liste
textHistoryweitere vorherige Elemente verfügbar sind. - Rufe das vorherige Element ab und bewege den
ListIteratorrückwärts. - Füge das neue Element
correctionvor dem Elementerrorein.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
public class TextEditorUndo {
public static void main(String[] args) {
ArrayList textHistory = new ArrayList<>();
textHistory.add("Hello");
textHistory.add("error");
textHistory.add("world");
// Create ListIterator starting from the end of the list
ListIterator it = textHistory.____(textHistory.____());
// Check if more elements are available in reverse order
while (____.____()) {
// Retrieve previous element
String word = ____.____();
if (word.equals("error")) {
// Insert "correction" before "error"
____.____("correction");
}
}
System.out.println(textHistory);
}
}