days={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"}
revDays = {}
for i,v in ipairs(days) do
revDays[v] = i
end
for i in pairs(revDays) do
print(revDays[i])
end
for循环中ipairs和pairs是起什么作用,怎么使用呢?求指导!
------解决方案--------------------
for循环中ipairs和pairs,分别是用来遍历数组元素,和遍历所有用的元素用的
for i,v in ipairs(days) do
revDays[v] = i
end
这里,i表示的就是数组的索引,从1开始到7为止,v表示的就是数组的数据比如"Sunday"
for i in pairs(revDays) do
print(revDays[i])
end
这里,遍历所有元素,由于是按hash表存的index,所以可能是1到7乱序排列,v表示的是数组的数据。
所以,如果一个table里有以string为索引的,ipairs是不能遍历所有的元素,只能用pairs