簡體   English   中英

Lua:table.remove不適用於2D數組

[英]Lua: table.remove does not work with 2D array

t = { 
  { 7, "123" }, 
  { 8, "234" }, 
  { 9, "345" }
}

t = table.remove(t, 1) -- This thing brokes everything, but should delete first group

for k, v in ipairs(t) do
  print(k, v[1], v[2])
end

這東西只是討厭我,我和它戰斗了四個小時,從死角上走不了。 嘗試了幾個不同的循環,不同的字母位置( v[1] -> k[1]等),沒有任何幫助。

table.remove返回刪除的元素,而不是更新的表。 只是不分配t = table.remove(t, 1) ,而是丟棄返回值,即沒有任何分配的裸table.remove(t, 1)

另請參閱手冊

table.remove(表[,pos])

從表中刪除位置pos元素,如有必要,向下移其他元素以關閉空間。 返回已刪除元素的值。 pos的默認值為n ,其中n是表的長度,以便調用table.remove(t)刪除表t的最后一個元素。

t = { 
  { 7, "123" }, 
  { 8, "234" }, 
  { 9, "345" }
}

table.remove(t, 1)

for k, v in pairs(t) do
  print(k, v[1], v[2])
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM