Funktionen der table-Bibliothek
Verwenden Sie table.insert, remove, sort, concat, move und unpack
Funktionen der table-Bibliothek ist eine kostenlose Lua Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Lua Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Lua Academy-Kurs umfasst insgesamt 4 Lektionen.
Das table-Modul
Das table-Modul stellt Funktionen zur Bearbeitung von Lua-Tabellen bereit, die als Arrays verwendet werden: insert, remove, sort, concat, move und unpack.
table.insert
table.insert(t, val) hängt ein Element am Ende an. table.insert(t, pos, val) fügt ein Element an der Position ein und verschiebt die nachfolgenden Elemente nach rechts.
local t = {"a", "b", "d"}
table.insert(t, "e") -- append
table.insert(t, 3, "c") -- insert at index 3
print(table.concat(t, ",")) -- a,b,c,d,etable.remove
table.remove(t) entfernt das letzte Element und gibt es zurück. table.remove(t, pos) entfernt das Element an der Position und verschiebt die übrigen Elemente nach links.
local t = {"x", "y", "z"}
print(table.remove(t)) -- z
print(table.remove(t, 1)) -- x
print(table.concat(t)) -- ytable.sort
table.sort(t, cmp) sortiert direkt in der Tabelle. Ohne cmp wird < verwendet. Der Vergleich muss eine strikte schwache Ordnung definieren.
local t = {3, 1, 4, 1, 5, 9, 2, 6}
table.sort(t)
print(table.concat(t, " ")) -- 1 1 2 3 4 5 6 9table.concat
table.concat(t, sep, i, j) verbindet Array-Elemente zu einer Zeichenkette. Die Elemente müssen Zeichenketten oder Zahlen sein.
local words = {"Hello", "world", "from", "Lua"}
print(table.concat(words, " ")) -- Hello world from Luatable.move
table.move(a1, f, e, t, a2) kopiert Elemente aus a1[f..e] nach a2, beginnend an der Position t. Wenn a2 weggelassen wird, erfolgt das Kopieren innerhalb von a1.
local src = {1,2,3,4,5}
local dst = table.move(src, 2, 4, 1, {})
print(table.concat(dst, ",")) -- 2,3,4table.unpack
table.unpack(t, i, j) gibt die Elemente t[i] bis t[j] als separate Werte zurück. Standard: 1 bis #t.
local t = {10, 20, 30}
print(table.unpack(t)) -- 10 20 30
local a, b = table.unpack(t, 1, 2)
print(a, b) -- 10 20table.pack
table.pack(...) packt variable Argumente in eine Tabelle mit einem Feld n, das die Gesamtanzahl einschließlich nil-Werten enthält.
local function allArgs(...)
local t = table.pack(...)
print("count:", t.n)
return t
end
allArgs(1, nil, 3) -- count: 3Warteschlange mit insert/remove simulieren
Verwenden Sie table.insert, um Elemente am Ende einzureihen, und table.remove(t, 1), um sie am Anfang zu entnehmen (beachten Sie die Kosten von O(n)).
Stack simulieren
Verwenden Sie table.insert zum Ablegen und table.remove (ohne Positionsangabe) zum Entnehmen – beide Vorgänge haben die Komplexität O(1).
table.move zum Verschieben
Verschieben Sie alle Elemente um eins nach links, indem Sie table.move(t, 2, #t, 1) verwenden, und setzen Sie anschließend das letzte Element auf nil.
local t = {1,2,3,4,5}
table.move(t, 2, #t, 1)
t[#t] = nil
print(table.concat(t, ",")) -- 2,3,4,5Frage zur table-Bibliothek
Was gibt table.pack(1, nil, 3) zurück?
Zusammenfassung: table-Bibliothek
Die table-Bibliothek stellt insert, remove, sort, concat, move, unpack und pack bereit. Zusammen decken diese Funktionen alle gängigen Anforderungen an die effiziente Bearbeitung von Arrays ab.
Häufig gestellte Fragen
Ist die Lektion „Funktionen der table-Bibliothek“ kostenlos?
Ja — der vollständige Text von „Funktionen der table-Bibliothek“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Lua Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Lua Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Funktionen der table-Bibliothek“?
Verwenden Sie table.insert, remove, sort, concat, move und unpack Du übst Lua Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Lua Academy zu starten?
Keine Vorkenntnisse erforderlich. Lua Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „Funktionen der table-Bibliothek“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Lua Academy-Lektion Code schreiben und ausführen?
Ja. Jede Lua Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Funktionen der math-Bibliothek
- Funktionen der table-Bibliothek
- Die Bibliotheken os und io
- Die debug-Bibliothek