1

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

我的问题是 - 有人可以向我解释第 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))
4

1 回答 1

3

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

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

当您pairs在 for 循环中运行时,它会为表中的每个键/值对执行一次之间do的代码;为循环内的代码设置键和值的名称。 是最常见的迭代器示例。endfor x, y inpairs

于 2012-07-26T17:53:40.840 回答