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
Ein-/Ausgabe und Streams in Java
Anleitung zur Übung
- 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 Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
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);
}
}