Lua Table增删排序
谨慎使用 table[index]=nil 删除某索引下的值,原table其他隐藏索引编号不会发生改变!
且这种方法会导致索引产生空缺不连续,也会影响ipairs方法的遍历,pairs方法不受影响
t = {
1,
2,
3
}
–插入函数(table,位置(可选),值)
table.insert(t,1,10)
table.insert(t,'r')
–删除函数(table,位置(可选))
table.remove(t,2)
table.remove(t) – 不写位置默认删除最末一位
t[2]=nil – 删除该索引下的值,但是!原table其他隐藏索引不会改变!
–排序(table,排序规则(可选),默认正序)
– 正序排序
table.sort(t)
–倒序排序
local function my_sort(x,y)
– body
if x > y then
return true
else
return false
end
end
table.sort(t,my_sort)
for k,v in pairs(t) do
print(k,v)
end