將數字轉換爲表格的最有效方法是什麼?或者是否有可能製作一個表沒有迴路?如何在lua中初始化表格大小
local t = 10 -- given number
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10} -- result
更新:t
變量是可變數字,我想爲每個值。
t = 3
function foreach(f, t)
for i, v in ipairs(t) do
f(v)
end
end
foreach(print, t)
1
2
3
我需要一個最快的方式new Array(n)
在Lua。或者沒有任何意義?
你能與我們分享,你爲什麼會想這樣的表?如果你唯一的目標是要有一個長度爲10的表,但它不會有10個元素,那麼可以使用'table.setn'。 –
你可以將'lua_createtatble'輸出到Lua。 table.setn是depricated,只是設置'n = x',但不分配內存(我不知道這一點)。但我真的建議在執行任何實施之前進行性能測試。 – moteus
@SebastianHoffmann感謝您的評論。我想避免這個例子中的雙循環。但是我得到了'foo = {};打印(table.setn(foo,10))' stdin:1:嘗試調用字段'setn'(一個零值) 堆棧回溯: stdin:1:在主區塊中 [C]:in? ' – jackson555