Menu
Coddy logo textTech

Paare mit nil entfernen

Teil des Abschnitts Fundamentals der Lua-Journey von Coddy — Lektion 69 von 90.

Wenn man einem Schlüssel nil zuweist, entfernt Lua dieses Schlüssel-Wert-Paar effektiv aus der Tabelle:

local settings = {
    ["volume"] = 80,
    ["difficulty"] = "normal",
    ["music"] = true
}

-- Entferne die Schwierigkeitseinstellung
settings.difficulty = nil

-- Jetzt existiert der Schlüssel für die Schwierigkeit nicht mehr in der Tabelle

Sie können entweder die Punktnotation oder die Klammernotation verwenden, um ein Schlüssel-Wert-Paar zu entfernen. Sowohl settings.difficulty = nil als auch settings["difficulty"] = nil funktionieren auf genau dieselbe Weise.

Nachdem man einem Schlüssel nil zugewiesen hat, verschwindet dieser Schlüssel vollständig aus der Tabelle. Wenn Sie später versuchen, darauf zuzugreifen, erhalten Sie nil als Ergebnis, genau so, als ob der Schlüssel von vornherein nie existiert hätte.

challenge icon

Aufgabe

Einfach

Erstellen Sie ein Spielkonfigurationssystem, das zeigt, wie unerwünschte Einstellungen aus einer Dictionary-ähnlichen Tabelle entfernt werden. Beginnen Sie mit der Erstellung einer Tabelle namens gameConfig mit den folgenden Schlüssel-Wert-Paaren: ["graphics"] soll der String "high" zugewiesen werden, ["sound"] soll die Zahl 75 zugewiesen werden, ["difficulty"] soll der String "normal" zugewiesen werden und ["debug"] soll der Boolean true zugewiesen werden.

Nachdem Sie die ursprüngliche Konfigurationstabelle erstellt haben, entfernen Sie die Einstellung debug, indem Sie ihr mithilfe der Punktnotation nil zuweisen. Geben Sie anschließend die verbleibende Sound-Einstellung aus, um zu überprüfen, ob die Tabelle die anderen Werte noch enthält.

Spickzettel

Um ein Schlüssel-Wert-Paar aus einer Tabelle zu entfernen, weisen Sie dem Schlüssel nil zu:

local settings = {
    ["volume"] = 80,
    ["difficulty"] = "normal",
    ["music"] = true
}

-- Entferne die Schwierigkeitseinstellung
settings.difficulty = nil

Sie können entweder die Punktnotation oder die Klammernotation verwenden:

settings.difficulty = nil
settings["difficulty"] = nil

Nach der Zuweisung von nil verschwindet der Schlüssel vollständig aus der Tabelle. Der Zugriff darauf gibt nil zurück.

Probier es selbst

-- TODO: Schreibe deinen Code hier
-- Erstelle die gameConfig-Tabelle mit den erforderlichen Schlüssel-Wert-Paaren
-- Entferne die Debug-Einstellung unter Verwendung der Punktnotation
-- Gib die Sound-Einstellung aus
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Fundamentals