Looking for lua Keywords? Try Ask4Keywords

LuaTabellen


Syntax

  • ipairs (numeric_table) - Lua-Tabelle mit Iterator für numerische Indizes
  • Paare (input_table) - generischer Lua-Tabelleniterator
  • key, value = next (input_table, input_key) - Lua-Tabellenwert-Wähler
  • table.insert (input_table, [position], value) - fügt den angegebenen Wert in die Eingabetabelle ein
  • remove_value = table.remove (input_table, [position]) - Legt den letzten Wert an oder entfernt den durch position angegebenen Wert

Bemerkungen

Tabellen sind die einzige in Lua verfügbare integrierte Datenstruktur. Dies ist entweder elegant oder verwirrend, je nachdem, wie Sie es betrachten.

Eine Lua-Tabelle ist eine Sammlung von Schlüssel-Wert-Paaren, bei denen die Schlüssel eindeutig sind und weder der Schlüssel noch der Wert gleich nil . Daher kann eine Lua-Tabelle einem Wörterbuch, einer Hashmap oder einem assoziativen Array aus anderen Sprachen ähneln. Viele strukturelle Muster können mit Tabellen erstellt werden: Stapel, Warteschlangen, Sets, Listen, Diagramme usw. Schließlich können Tabellen verwendet werden, um Klassen in Lua zu erstellen und ein Modulsystem zu erstellen.

Lua erzwingt keine besonderen Regeln für die Verwendung von Tabellen. Die in einer Tabelle enthaltenen Elemente können eine Mischung aus Lua-Typen sein. Eine Tabelle kann beispielsweise Strings, Funktionen, Booleans, Zahlen und sogar andere Tabellen als Werte oder Schlüssel enthalten.

Eine Lua-Tabelle mit aufeinanderfolgenden positiven Ganzzahl-Schlüsseln, die mit 1 beginnen, hat eine Sequenz. Die Schlüsselwertpaare mit positiven Ganzzahlschlüsseln sind die Elemente der Sequenz. Andere Sprachen nennen dies ein 1-basiertes Array. Bestimmte Standardoperationen und -funktionen funktionieren nur in der Reihenfolge einer Tabelle und einige haben ein nicht deterministisches Verhalten, wenn sie auf eine Tabelle ohne Reihenfolge angewendet werden.

Wenn Sie einen Wert in einer Tabelle auf nil wird er aus der Tabelle entfernt. Iteratoren sehen den zugehörigen Schlüssel nicht mehr. Beim Codieren einer Tabelle mit einer Sequenz ist es wichtig, zu vermeiden, dass die Sequenz unterbrochen wird. Entfernen Sie nur das letzte Element oder verwenden Sie eine Funktion wie die Standardtabelle table.remove , mit der Elemente nach unten table.remove , um die Lücke zu schließen.

Tabellen Verwandte Beispiele