采用pair:
復(fù)制代碼 代碼如下:
function print_contents(params)
for k, v in pairs(params) do
print(k, " ", v)
end
end
print_contents({20, 40, 50})
采用inpari:
復(fù)制代碼 代碼如下:
local tt =
{
[1] = "test3",
[4] = "test4",
[5] = "test5"
}
for i,v in ipairs(tt) do -- 輸出 "test3" k=2時(shí)斷開 ,因?yàn)閿?shù)組的下表沒有連續(xù),i是從下表1開始,剛好三個(gè)元素,導(dǎo)致i = 3的時(shí)候已經(jīng)輸出完畢
print( tt[i] )
end
下面在才用ipair,數(shù)組連續(xù)的情況下,全部輸出:
復(fù)制代碼 代碼如下:
function print_inpaircontents(params)
for k, v in ipairs(params) do
print(v)
end
end
local temp_table = {
[1] = "test3",
[2] = "test4",
[3] = "test5"
}
print_inpaircontents(temp_table)
pairs()可以遍歷整個(gè)table,即包括數(shù)組及非數(shù)組部分。
ipairs()函數(shù)用于遍歷table中的數(shù)組部分。
您可能感興趣的文章:- Lua中ipair和pair的區(qū)別
- Lua 中 pairs 和 ipairs 的區(qū)別