假设我想存储一个元素列表。包括一些零值。值的位置很重要,我需要表示列表中给定位置没有值。
这里有一个问题:
a = {1,2,3,nil,4}
for k,v in ipairs(a) do
print(k,v)
end
print(a[4])
print(a[5])
Run Code Online (Sandbox Code Playgroud)
for 循环只会打印元素 1,2 和 3。它在 nil 处停止。第一个打印语句打印 nil,但我不确定它是否实际存储在表中。(谁知道?)第二个打印语句按预期打印 4。
那么问题来了:如何在表中表示元素列表,并有效地遍历它们?鉴于上述条件,例如头寸是重要的,并且一些头寸是“空的”。换句话说:没有价值,但在那个位置没有那个价值是有意义的。