print("******* Table Pairs ******* ")
-- 迭代器遍历主要是用来遍历表的
-- # 得到的table长度其实并不一定准确,一般不同 # 来遍历table
a = {[0] = 1, 2, [-1] = 3, 4, 5, [5] = 6}
-- print("******* ipairs迭代器遍历 ******* ")
-- ipairs
-- 从 1 开始往后遍历, 小于等于0的索引遍历得不到
-- 只能找到连续索引的 键,如果中间断序了,那么也无法遍历出后面的内容
for i, k in ipairs(a) do
print("ipairs: " .. i .. "_" .. k)
end
-- print("******* ipairs迭代器遍历键 ******* ")
-- 只能遍历出 >= 0 的键
for i in ipairs(a) do
print("ipairs_key " .. i)
end
-- print("******* pairs迭代器遍历 ******* ")
-- pairs能够把所有的键都找到,通过键可以得到值
for i, v in pairs(a) do
print("pairs: " .. i .. "_" .. v)
end
-- print("******* pairs迭代器遍历键 ******* ")
for i in pairs(a) do
print("pairs_key " .. i)
end
Lua-- Table的遍历
于 2022-04-14 19:20:39 首次发布
本文详细介绍了Lua中的迭代器`ipairs`和`pairs`的使用。`ipairs`主要用于遍历连续索引的表,而`pairs`能遍历所有键值对,包括非连续和负数索引。在遍历过程中,`ipairs`无法获取小于等于0的索引,而`pairs`则可以获取全部键。对于理解Lua表的遍历机制,这对迭代器的运用至关重要。

8340

被折叠的 条评论
为什么被折叠?



