lua table遇见nil,空表的输出
local record = {}
record[1] = {
content = 'c'
}
record[2] = {
content = 'b'
}
record[3] = {
content = 'a'
}
for _ , r in pairs(record) do
print(r.content)
end
print('----------')
local tmp = {}
print(tmp)
print('tmp size:',#tmp)
for _ , r in pairs(tmp) do
print(r.content)
end
record = nil
for _ , r in pairs(record) do
print(r.content)
end
输出:
c
b
a
----------
table: 0x18f64a0
tmp size: 0
lua: /usercode/file.lua:29: bad argument #1 to 'pairs' (table expected, got nil)
stack traceback:
[C]: in function 'pairs'
/usercode/file.lua:29: in main chunk
[C]: in ?
local tmp = {}
tmp['a'] = 1
print('tmp size:',#tmp)
for _ , r in pairs(tmp) do
print(r)
end
tmp['a'] = nil
for _ , r in pairs(tmp) do
print(r)
end
输出:
tmp size: 0
1