Lua Academy · Les

Functies uit de table-bibliotheek

Gebruik table.insert, remove, sort, concat, move en unpack

Les 2 van 413 stappen

Functies uit de table-bibliotheek is een gratis Lua Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Lua Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Lua Academy bevat in totaal 4 lessen.

De module table

De module table biedt functies om Lua-tabellen te bewerken die als arrays worden gebruikt: insert, remove, sort, concat, move en unpack.

table.insert

table.insert(t, val) voegt een element aan het einde toe. table.insert(t, pos, val) voegt een element toe op een positie en schuift latere elementen naar 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,e

table.remove

table.remove(t) verwijdert het laatste element en retourneert het. table.remove(t, pos) verwijdert het element op een positie en schuift de overige elementen naar links.

local t = {"x", "y", "z"}
print(table.remove(t))     -- z
print(table.remove(t, 1))  -- x
print(table.concat(t))     -- y

table.sort

table.sort(t, cmp) sorteert ter plaatse. Zonder cmp wordt < gebruikt. De vergelijkingsfunctie moet een strikte zwakke ordening vormen.

local t = {3, 1, 4, 1, 5, 9, 2, 6}
table.sort(t)
print(table.concat(t, " "))  -- 1 1 2 3 4 5 6 9

table.concat

table.concat(t, sep, i, j) voegt array-elementen samen tot een tekenreeks. Elementen moeten tekenreeksen of getallen zijn.

local words = {"Hello", "world", "from", "Lua"}
print(table.concat(words, " "))  -- Hello world from Lua

table.move

table.move(a1, f, e, t, a2) kopieert elementen van a1[f..e] naar a2, beginnend op t. Als a2 wordt weggelaten, worden ze binnen a1 gekopieerd.

local src = {1,2,3,4,5}
local dst = table.move(src, 2, 4, 1, {})
print(table.concat(dst, ","))  -- 2,3,4

table.unpack

table.unpack(t, i, j) retourneert de elementen t[i] tot en met t[j] als afzonderlijke waarden. Standaard: 1 tot #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  20

table.pack

table.pack(...) verpakt variabele argumenten in een tabel met een veld n dat het totale aantal bevat, inclusief nil-waarden.

local function allArgs(...)
  local t = table.pack(...)
  print("count:", t.n)
  return t
end
allArgs(1, nil, 3)  -- count: 3

Een wachtrij simuleren met insert/remove

Gebruik table.insert om aan het einde een element aan de wachtrij toe te voegen en table.remove(t, 1) om er een aan het begin uit te halen (let op: kosten O(n)).

Een stack simuleren

Gebruik table.insert om een element op de stack te plaatsen en table.remove (zonder positie) om het bovenste element te verwijderen — beide zijn O(1)-bewerkingen.

table.move gebruiken om te verschuiven

Verschuif alle elementen één positie naar links met table.move(t, 2, #t, 1) en maak het laatste element daarna nil.

local t = {1,2,3,4,5}
table.move(t, 2, #t, 1)
t[#t] = nil
print(table.concat(t, ","))  -- 2,3,4,5

Vraag over de table-bibliotheek

Wat retourneert table.pack(1, nil, 3)?

Samenvatting: table-bibliotheek

De bibliotheek table biedt insert, remove, sort, concat, move, unpack en pack. Samen verwerken ze efficiënt alle gebruikelijke bewerkingen op arrays.

Gratis beginnen

Leer Lua met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
40
Lessen
159

Veelgestelde vragen

Is de les “Functies uit de table-bibliotheek” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Lua Academy, waaronder “Functies uit de table-bibliotheek”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Lua Academy bevat in totaal 4 lessen.

Wat leer ik in “Functies uit de table-bibliotheek”?

Gebruik table.insert, remove, sort, concat, move en unpack Je oefent met Lua Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Lua Academy te beginnen?

Ervaring vooraf is niet nodig. Lua Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.

Hoe lang duurt de les “Functies uit de table-bibliotheek”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Lua Academy?

Ja. Elke les over Lua Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Functies uit de math-bibliotheek
  2. Functies uit de table-bibliotheek
  3. De bibliotheken os en io
  4. De debug-bibliotheek
← Terug naar Lua Academy