战魂小筑

游戏,架构,客户端,渲染,服务器
lua 批量删除table元素的方法

t = { 1,2,2,5,6,2,2,7 }
-- 这是按照C++思路来的
local i = 1
while i < #t do
    if t[i] == 2 then
        i = table.remove( t, i ) 
    else
        i = i + 1
    end
end

-- 这是最快的
for k,d in ipairs(t) do
    if d == 2 then
        t[k] = nil
    end
end

posted on 2009-06-25 12:01  黑色灵猫  阅读(2451)  评论(0)    收藏  举报