lua中pairs和ipairs的区别,做个笔记,帮自己打打基础。。。谁要是喷我,我会喷的他生活不能自理的。。。
--ipairs和pairs的区别
PairsTable = {}
PairsTestTable = {
[1] = "abc",
[2] = "def",
[3] = "ghi",
[5] = "jkl"
}
function PairsTable:new(o)
o = o or {}
setmetatable(o, self)
self.__index = self
return o
end
function PairsTable:TestPairs(parameters)
for key, var in pairs(parameters) do
print("pairs key="..key.." value = "..var)
end
end
function PairsTable:TestIpairs(parameters)
for key, var in ipairs(parameters) do
print("ipairs key="..key.." value = "..var)
end
end
main方法调用如下
require("pairs_ipairs")
local function main()
local pairTable = PairsTable:new()
pairTable:TestIpairs(PairsTestTable)
pairTable:TestPairs(PairsTestTable)
end
main()
效果如下:
ipairs key=1 value = abc
ipairs key=2 value = def
ipairs key=3 value = ghi
pairs key=1 value = abc
pairs key=2 value = def
pairs key=5 value = jkl
pairs key=3 value = ghi