当键是表时,为什么lua-kv对是顺序的
**那么,为什么测试的打印是有序的,而不是每次都是新的测试呢 ipairs(t)返回三个值(迭代器函数、表t和0),以便当键是表时,为什么lua-kv对是顺序的,lua,lua-table,Lua,Lua Table,**那么,为什么测试的打印是有序的,而不是每次都是新的测试呢 ipairs(t)返回三个值(迭代器函数、表t和0),以便 用于IPAIR(t)中的i、v阀体端部 将迭代键-值对(1,t[1]),(2,t[2]),…,到 第一个零值 因此,ipairs不适用于测试,因为test不是从索引1开始的序列。它只有两个表键。来自 ipairs(t)返回三个值(迭代器函数、表t和0),以便 用于IPAIR(t)中的i、v阀体端部 将迭代键-值对(1,t[1]),(2,t[2]),…,到 第一个零值 因此,i
用于IPAIR(t)中的i、v阀体端部
将迭代键-值对(1,t[1]),(2,t[2]),…,
到
第一个零值
因此,ipairs
不适用于测试,因为test
不是从索引1开始的序列。它只有两个表键。来自
ipairs(t)返回三个值(迭代器函数、表t和0),以便
用于IPAIR(t)中的i、v阀体端部
将迭代键-值对(1,t[1]),(2,t[2]),…,
到
第一个零值
因此,
ipairs
不适用于测试,因为test
不是从索引1开始的序列。它只有两个表键。第一个循环从不做任何事情test
没有数组元素,因此ipairs
返回一个空迭代器。pairs
不按顺序迭代第一个循环从不执行任何操作test
没有数组元素,因此ipairs
返回一个空迭代器。pairs
不按顺序迭代
local a = {d = 1}
local b = {d = 2}
local test = {}
test[b] = true
test[a] = true
newtest = {
d = 1,
c = 2
}
for i in ipairs(test) do
print(i.d)
end
for k, v in pairs(newtest) do
print(k, v)
end