我正在学习用于Corona SDK的Lua语言,以下是我的问题:
local type1 = {nil, "(", nil, "x" ,nil , ")" ; n=6}
local type2 = {"(",nil, "x",nil, ")",nil ; n=6}
print(#type1) --prints 6
print(#type2) --prints 3
为什么第二个不是6呢?
#
运算符并不适用于所有的表格,它仅适用于序列,即其正数数字键的集合等于某个整数 n
的值为 {1..n}
。在这种情况下,n
是它的长度。例如,local t = {"hello", 42, true}
是一个序列。nil
,则它们都不是序列。
nil
的值在内的数量吗?不行,因为某个键的nil
值等同于在该键上没有值。 - Yu Haonil
赋值给一个变量,本质上等同于删除该变量的条目。 - Amber