LoslegenKostenlos loslegen

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

Kurs anzeigen

Anleitung zur Übung

  • Erstelle ein ListIterator-Objekt für die Liste textHistory und starte am Ende.
  • Prüfe, ob in der Liste textHistory weitere vorherige Elemente verfügbar sind.
  • Rufe das vorherige Element ab und bewege den ListIterator rückwärts.
  • Füge das neue Element correction vor dem Element error ein.

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);
    }
}
Code bearbeiten und ausführen