**迭代器遍历
主要用来遍历表
获取长度其实并不准确,一般不要使用#来遍历表(除非你很确定这里面的元素都是不间断,中间也没有为空的情况)**
ipairs迭代器遍历
- ipairs遍历还是从1开始遍历的,小于或等于0的不遍历
--ipairs
--先搞一个自定义索引
a = {[0]=1,2,[-1]=3,6}
for i,k in ipairs(a) do
print("ipairs遍历"..i..'_'..k)
end
pairs迭代器遍历
pairs可以遍历所以信息,建议使用其遍历各种不规则的表
--pairs迭代器遍历
b = {[0]=0,1,2,[3]=3,[5]=5,[-1]=-1,6}
for k,v in pairs(b) do
print(k,v)
end
ipairs是index索引,所以从1开始,pairs是全部遍历
总结
tab1 = {[0]="1",[1]="1",[3]='3',key5 = "5",key6="6",key7="7"};
--输出不完整
--[[
跟C#不一样,从序号1开始便利,前面都不会被遍历
中间断了也不会遍历
key是文字也不会遍历
--]]
print("--------------ipairs")
for k,v in ipairs(tab1) do
print(k..' '..v)
end
--输出顺序不定
print("------------pairs")
for k,v in pairs(tab1) do
print(k.." "..v)
end