lua中表的安全刪除

2021-06-26 23:56:37 字數 697 閱讀 3504

lua中表被刪除後會被重新索引,後面的元素會向前移動,這就是為什麼迴圈刪除第乙個總能刪除整個表的原因

for i=1,#tablename do

table.remove(tablename,1)

end

那麼問題來了,如果需要在迴圈遍歷表的時候刪除某個值,那麼接下來的遍歷過程就會因為索引被重新排序而破壞

end
end
如果想要訪問到全部元素,則需要改變索引

local m = 1

while m<= #tablename do

if m%2 == 0 then

table.remove(tablename,m)

m = m -1

endm = m +1

end

此時從b到g全部被刪除。

Oracle中表空間的建立,修改,刪除

今天在我使用oracle中imp命令時,出現了沒有相應的表空間的報錯。無奈只能重新把錶空間從新建立起來。建立表空間 create tablespace bhinfospace datafile c oracle cdc01.ora size 100m reuse,c oracle cdc02.ora...

lua迭代刪除坑

1 下面迭代刪除 只刪除乙個資料沒問題 1 個資料 只能刪除 一半或者一半 1個 for k,v in ipairs arr do if v.then table.remove arr,k endend 2 下面迭代刪除 只刪除乙個沒問題 刪除多個會出問題 因為邊迭代邊刪除會改變table結構導致有...

SQL中表的連線,LINQTOSQL中表的連線

表的連線分為,內連線與外連線。外連線分為左外連線,右外連線。左連線是已左邊表中的資料為基準,若左表有資料右表沒有資料,則顯示左表中的資料右表中的資料顯示為空 sql 內連線 select from a,b where a.aid b.aid a,b表連線,a,b中均有的資料才顯示 左外連線 sele...