Lua中,获取表的大小可以使用以下方法: (#table_name或table.getn(table_name)),有时返回值为0。

#table_name 返回非 0 值时呢? 再次,当 table.getn(table_name) 返回非 0 值时呢?

点赞
用户66692
用户66692

2.5.5 - 长度运算符

长度运算符由一元运算符 # 表示。字符串的长度是它的字节数(即每个字符为一个字节时字符串长度的通常含义)。

表格 t 的长度被定义为任何整数索引 n,使得 t[n] 不为 nil 且 t[n+1] 为 nil;此外,如果 t[1] 为 nil,则 n 可以为零。对于一个常规数组,其非 nil 值从 1 到给定 n,其长度正好是 n,即其最后一个值的索引。如果数组有“空洞”(即在其他非 nil 值之间的 nil 值),则 #t 可以是直接在 nil 值之前的任何索引(即,它可能把任何这样的 nil 值视为数组的末尾)。

2012-05-23 10:44:57
用户1417504
用户1417504

如果您的表中的键不是整数(例如字符串),那么长度操作符将返回0。

2012-05-25 13:30:24