Ich versuche, Tabelle von Tabelle in Lua zu subtrahieren, so wird die Rückgabetabelle die Subtraktion von t1 von t2 sein.Tabelle von Tabelle in Lua subtrahieren
Dies scheint zu funktionieren, aber gibt es einen effizienteren Weg?
function array_sub(t1, t2)
-- Substract Arrays from Array
-- Usage: nretable = array_sub(T1, T2) -- removes T1 from T2
table.sort(t1)
for i = 1, #t2 do
if (t2[i] ~= nil) then
for j = 1, #t1 do
if (t2[i] == t1 [j]) then
table.remove (t2, i)
end
end
end
end
return t2
end
local remove ={1,2,3}
local full = {}; for i = 1, 10 do full[i] = i end
local test ={}
local test = array_sub(remove, full)
for i = 1, #test do
print (test[i])
end
Im nativen Lua sind arrithmetische Operationen für Standardtabellenwerte nicht implementiert! Der von Ihnen angegebene Code verursacht einen Fehler ... – Piglet