Pregunta

Aquí hay un programa corto que toma en una tabla y devuelve el índice del mayor valor numérico en la tabla.

Mi pregunta es: ¿puede alguien explicarme la "palabra, contar" en el bucle en la línea 5?El programa funciona, pero no entiendo cómo la palabra, cuenta en el bucle para el bucle hace nada.

 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))

¿Fue útil?

Solución

Ejecutar el siguiente código debe hacerlo más claro:

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

Cuando ejecuta pairs en un bucle para el bucle, ejecuta el código entre do y end una vez para cada par de teclas / valor en la tabla;for x, y in Establece los nombres de la llave y el valor para el código dentro del bucle.pairs es el ejemplo visto más comúnmente de una ITERATOR .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top