Lua 流程控制
Lua 流程控制
Lua 作为一种脚本语言,在程序设计中,流程控制是一个非常重要的概念。Lua 中有三种主要的流程控制结构:条件语句、循环语句和迭代器。
条件语句
条件语句包括 if、else 和 elseif 三个关键字,可以用来控制程序的执行流程。
- if
if 语句包含一个条件表达式和一个代码块,如果条件表达式为 true(非 nil 或 false),则执行代码块的内容。应该注意 if 语句最后没有分号。
if condition then
statements
end
- if-else
else 语句用于 if 语句的替代方案,可以用来实现一个二选一的逻辑。
if condition then
statements
else
statements
end
- elseif
elseif 用于在条件为 false 时,判断新的条件。
if condition_1 then
statements
elseif condition_2 then
statements
else
statements
end
循环语句
循环语句包括 while、repeat 和 for 三个关键字,可以用来重复执行代码块中的命令。
- while
while 语句重复地执行语句,只要条件为 true。
while condition do
statements
end
- repeat
repeat 循环重复执行一个代码块,直到条件为 true。
repeat
statements
until condition
- for
for 语句和 C 语言风格的 for 循环类似。
数值循环
for var = start, end, step do
statements
end
泛型循环
for i, v in ipairs(t) do
statements
end
迭代器
迭代器是一种方法,用于遍历序列中的每个元素。迭代器可以用在泛型循环中。
ipairs()
ipairs() 函数是 Lua 语言中的一种迭代器,其常用于数组中。
for i, v in ipairs(t) do
statements
end
pairs()
pairs() 函数是 Lua 语言中的默认迭代器,其可用于遍历 Lua 中的表。
for k, v in pairs(t) do
statements
end
总结
Lua 语言中,流程控制分为条件语句、循环语句和迭代器三种。其中条件语句包括 if、else 和 elseif 三种关键字,用于控制程序的执行流程;循环语句包括 while、repeat 和 for 三种关键字,可用来重复执行代码块中的命令;迭代器是一种遍历序列中每个元素的方法,用于泛型循环中。熟练掌握流程控制语句和迭代器,可以写出流畅、简洁的 Lua 代码。