手动计数
i具有一个函数,该函数正在返回 "Match"
,如果true,则 nil
else。我需要知道 "Match"
列表中的值数量(因此使用 nil
作为我函数中的另一个值(。
someList = {"gdj", nil, "jdis"}
print(#someList) --> 3
我的起源问题是在这里,如果有什么我应该返回的东西!
#
运算符以一种相当奇怪的方式定义;它将计算直到非nil元素之一。就您而言,它也有可能也可以返回1
。这是因为LUA并不真正支持将nils存储在桌子上。
因此,除非您知道它的大小并且可以自己停止迭代,否则没有明确的迭代方法。
存储专用的"虚假"值,然后简单地迭代并使用ipairs
进行计数。