Question

Voici un petit programme qui prend un tableau, et renvoie l'index de la plus grande valeur numérique dans la table.

Ma question est - que quelqu'un peut m'expliquer le "mot, comte" dans la boucle sur la ligne 5?Le programme fonctionne, mais je ne suis pas à comprendre comment le mot, le comte de la boucle for n'importe quoi.

 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))
Était-ce utile?

La solution

Exécutant le code suivant devrait rendre cela plus clair:

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

Lorsque vous exécutez pairs dans une boucle for, il exécute le code entre do et end une fois pour chaque paire clé/valeur dans le tableau; for x, y in définit le nom de la clé et de la valeur pour le code dans la boucle. pairs est le plus couramment vu l'exemple d'une itérateur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top