PROGRAMMA NUMERO MAX LUA
Domanda
Ecco un breve programma che assume una tabella e restituisce l'indice del valore numerico più grande nella tabella.
La mia domanda è - qualcuno può spiegarmi la "parola, contare" nel ciclo per la linea 5?Il programma funziona, ma non capisco come la parola, contare nel ciclo del ciclo fa qualsiasi cosa.
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))
. Soluzione
L'esecuzione del seguente codice dovrebbe renderlo più chiaro:
tbl = { a = "one", b = "two", c = "two and half" }
for key, val in pairs(tbl) do print(key, val) end
.
Quando si esegue pairs
in A per Loop, esegue il codice tra do
e end
una volta per ciascuna coppia di tasti / valore nella tabella;for x, y in
Imposta i nomi del tasto e del valore per il codice all'interno del loop.pairs
è l'esempio più comunemente visto di un iterator .
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow