Lua語言中pairs和ipairs的區別

2021-06-16 13:28:52 字數 526 閱讀 7695

copy from:

tbl =

for key, value in ipairs(tbl) do

print(key, value)

end

-pairs()函式基本和ipairs()函式用法相同, 區別在於:

pairs()可以遍歷整個table,即包括陣列及非陣列部分。

-->如有pairs迭代輸出如下:

-->1

alpha

-->2

beta

-->one

uno

-->two

dos

ipairs()函式用於遍歷table中的陣列部分。

-->如有ipairs迭代輸出如下:

-->1

alpha

-->2

beta

最後,還有一點要注意:這個遍歷陣列的迭代器函式在遍歷過程是無序的!!即輸出的順序有可能與表裡的順序是不一致的!

lua 中pairs 和 ipairs差別

ipairs 和pairs在lua中都是遍歷tbale的函式可是兩者有差別 1.pairs遍歷table中的全部的key vale 而ipairs會依據key的數值從1開始加1遞增遍歷相應的table i 值 pairs能夠遍歷表中全部的key,而且除了迭代器本身以及遍歷表本身還能夠返回nil 可是...

LUA中ipairs和pairs的區別

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

Lua之pairs和ipairs的區別

之前看了其他前輩寫得關於pairs和ipairs的區別,覺得沒能夠很好抓住重點,所以這次因為複習的關係,我自己也寫了乙個。lua庫為泛型for迴圈提供了幾個迭代器函式 io.lines用於遍歷每行 pairs用於迭代table元素 ipairs用於迭代陣列元素 string.gmatch用於迭代字串...