这是一个简短的程序,它接受一个表,并返回表中最大数值的索引。

我的问题是 - 有人可以向我解释第 5 行 for 循环中的“单词,计数”吗?该程序有效,但我不明白 for 循环中的 count 这个词是如何做的。

 numbers = {10, 5, 1}

 function largest(t)
   local maxcount = 0
   local maxindex
   for word, count in pairs(t) do
     if count > maxcount then
       maxcount = count
       maxindex = word 
     end
   end
   return maxindex, maxcount
 end

 print(largest(numbers))
有帮助吗?

解决方案

运行以下代码应该会更清楚:

tbl = { a = "one", b = "two", c = "two and half" }
for key, val in pairs(tbl) do print(key, val) end

当你跑步时 pairs 在 for 循环中,它执行之间的代码 doend 对于表中的每个键/值对一次; for x, y in 设置循环内代码的键和值的名称。 pairs 是最常见的例子 迭代器.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top