微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Lua表元素去重小测试

local tab1 = {1,2,3,5,9,7,8}
local tab2 = {3,4,5,7,6,2}

local tab3,tab4  = {},{}

for _,v in pairs(tab2) do
	tab1[#tab1 + 1] = v
end

for _,v in  pairs(tab1) do
	tab3[v] = true
end

for k in pairs(tab3) do
	tab4[#tab4 +1]= k
end

table.foreachi(tab4, print)

-- 数组表去除重复元素
function ArrayTableunique(t)
  local check = {}
  local n = {}

  for key, value in ipairs(t) do
	if not check[value] then
	  check[value] = value
	  n[#n +1] = value
	end
  end

  return n
end

-- 哈希表去除重复元素
function Tableunique(t)
  local check = {}
  local n = {}

  for key, value in pairs(t) do
    print ("key="..key, "value="..value)
	if not check[value] then
	  check[value] = value
	  n[key] = value
	end
  end

  return n
end


print "---------------------------"
local t = ArrayTableunique(tab1)
table.foreachi(t, print)

  

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐