赞
踩
在 Lua 中,循环是一种常用的控制结构,用于重复执行一段代码直到满足某个条件。Lua 提供了几种不同的循环结构,每种都有其特定的用途。以下是 Lua 中常见的循环结构:
for
循环Lua 中有两种类型的 for
循环:数值 for
循环和通用 for
循环。
for
循环这种循环通常用于遍历一系列数字,例如数组的索引。
for i = 1, 10 do
print(i)
end
for
循环这种循环用于迭代表中的键值对。它使用 pairs
或 ipairs
函数来获取表中的键值对。
local t = {"apple", "banana", "cherry"}
-- 使用 ipairs 遍历数组形式的表
for i, fruit in ipairs(t) do
print(i, fruit)
end
-- 使用 pairs 遍历字典形式的表
local d = {"key1" = "value1", "key2" = "value2"}
for key, value in pairs(d) do
print(key, value)
end
while
循环while
循环会在每次循环之前检查条件。只要条件为真,就会执行循环体。
local i = 1
while i <= 10 do
print(i)
i = i + 1
end
repeat-until
循环repeat-until
循环至少会执行一次循环体,然后在每次循环结束时检查条件。
local i = 1
repeat
print(i)
i = i + 1
until i > 10
break
和 continue
语句break
语句用于立即退出循环。continue
语句用于跳过当前循环的剩余部分,并继续下一次循环。for i = 1, 10 do
if i == 5 then
break -- 退出循环
end
print(i)
end
for i = 1, 10 do
if i == 5 then
continue -- 跳过 i=5 的迭代
end
print(i)
end
function fibonacci(n)
local a, b = 0, 1
for i = 1, n do
a, b = b, a + b
end
return a
end
print(fibonacci(10)) -- 输出第10个斐波那契数
function countCharacters(s)
local counts = {}
for i = 1, #s do
local char = s:sub(i, i)
counts[char] = (counts[char] or 0) + 1
end
return counts
end
local str = "hello world"
local charCounts = countCharacters(str)
for char, count in pairs(charCounts) do
print(char .. ": " .. count)
end
这些是 Lua 中循环的基本用法。如果您需要更详细的解释或有其他问题,请随时提问!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。