myTable = {} myTable["foo"] = 12 myTable["bar"] = "blah" print(#myTable) -- this prints 0
numItems = 0 for k,v in pairs(myTable) do numItems = numItems + 1 end print(numItems) -- this prints 2
解决方法
我试验了#操作符和table.getn()。我认为table.getn()会做你想要的,但结果是它返回相同的值为#,即0.看来,字典插入nil占位符的必要。
循环遍历键和计数它们似乎是获得字典大小的唯一方法。