2

任何人都可以提供一种替代方法来从数字索引
表中删除重复项,以保留重复项的记录吗?,这个可以工作,但是在
1000 个或更多条目的表上,它似乎只是吃掉了 CPU,而这反过来又给出了“无响应
”嵌入了应用程序lua。

   local Dupes ={}  
   local t2 = {};  
   for i,v in pairs(t1) do   
    Count = table.getn(t2)     
    t2[v] = i  
    Count1 = table.getn(t2)   
     if Count == Count1 then  
      table.insert(Dupes,v)  
     end  
   end  
4

1 回答 1

5

我真的不明白使用getn. 只需测试它是否已经存在:

local Dupes ={}  
local t2 = {};  
for i,v in pairs(t1) do
    if(t2[v] ~= nil) then
        table.insert(Dupes,v)
    end
    t2[v] = i
end
于 2012-06-17T22:24:19.960 回答