English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Loop for no Lua

Laços do Lua

A instrução de loop for no Lua pode repetir uma instrução específica várias vezes, e o número de repetições pode ser controlado dentro da instrução for.

A sintaxe do comando for no Lua tem dois grandes tipos:

  • Loop for numérico

  • Loop Genérico

Loop for numérico

Formato da sintaxe de loop for numérico em linguagem de programação Lua:

for var=exp1,exp2,exp3 do  
    <Corpo de execução>  
end

var de exp1 muda para exp2cada vez que muda para exp3 Para var de passo incrementado, execute uma vez "Corpo de Execução"。3 é opcional, se não for especificado, o valor padrão é1。

Exemplo Online

for i=1,f(x) do
    print(i)
end
 
for i=10,1,-1 do
    print(i)
end

Os três expressões do for são avaliadas uma vez no início do loop e não são avaliadas novamente. Por exemplo, o f(x) é executado apenas uma vez no início do loop e seu resultado é usado no loop posterior.

Verificação conforme:

#!/usr/local/bin/lua  
function f(x)  
    print("function")  
    return x*2   
end  
for i=1,f(5) do print(i)  
end

O resultado de exemplo acima é:

function
1
2
3
4
5
6
7
8
9
10

Pode ser visto que a função f(x) é executada apenas uma vez no início do loop.

Loop Genérico

O loop genérico usa uma função de iterador para percorrer todos os valores, semelhante à expressão foreach no Java.

A sintaxe de loop genérico do linguagem de programação Lua é:

--Imprimir todos os valores do array a  
a = {"one", "two", "three"}
for i, v in ipairs(a) do
    print(i, v)
end

i é o valor de índice do array, v é o valor do elemento do array correspondente ao índice. ipairs é uma função de iterador fornecida pelo Lua, usada para iterar arrays.

Exemplo Online

Loopar a matriz days:

#!/usr/local/bin/lua  
days = {"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"}  
for i,v in ipairs(days) do  print(v) end

O resultado de exemplo acima é:

Segunda-feira
Domingo
Segunda-feira
Terça-feira
Quarta-feira
Quinta-feira
Sábado

Laços do Lua