lua 中pairs 和 ipairs差別

2021-09-07 13:29:29 字數 529 閱讀 9661

ipairs 和pairs在lua中都是遍歷tbale的函式可是兩者有差別

1.pairs遍歷table中的全部的key-vale 而ipairs會依據key的數值從1開始加1遞增遍歷相應的table[i]值

pairs能夠遍歷表中全部的key,而且除了迭代器本身以及遍歷表本身還能夠返回nil;可是ipairs則不能返回nil,僅僅能返回數字0,假設遇到nil則退出。它僅僅能遍歷到表**現的第乙個不是整數的key

a = 

for key, value in ipairs(a) do

print(key, value)

end結果:

1 a1

2 a2

3 a3

a =

for key, value in pairs(a) do

print(key, value)

end結果:

6 a5

2 a2

3 a3

1 a1

5 a4

lua學習筆記12 pairs和ipairs

在lua中,pairs和iparis都可以用於遍歷數字,他們也是有區別的,而且區別還挺大,看下面幾個例子 local tabfiles for k,v in ipairs tabfiles do print k,v end ipairs tabfiles 遍歷時,當key 1時候value就是nil...

LUA中ipairs和pairs的區別

在lua中,table的遍歷可以通過ipairs或pairs來完成,但是兩者的用法並非完全一樣的。ipairs只遍歷索引為數字的key value對,從下標1開始遞增 而pairs則會無序遍歷table中所有元素,字串索引 數字索引 函式等。因此,如果乙個table是乙個純陣列,那麼兩者遍歷的結果是...

Lua中pairs和ipairs的區別

在lua中有提供預設的迭代函式 pairs 和 ipairs,我們通常使用這兩個迭代函式來進行table的遍歷,那麼這兩個迭代函式的區別是什麼?首先,table儲存的值是連續的時候,兩個是沒有什麼區別的,如下 tab1 for k,v in ipairs tab1 do 使用ipairs進行遍歷 p...