Lua 循环

在 Lua 中,循环是一种常用的控制结构,用于重复执行一段代码直到满足某个条件。Lua 提供了几种不同的循环结构,每种都有其特定的用途。以下是 Lua 中常见的循环结构:

1. for 循环

Lua 中有两种类型的 for 循环:数值 for 循环和通用 for 循环。

数值 for 循环

这种循环通常用于遍历一系列数字,例如数组的索引。

示例
for i = 1, 10 do
    print(i)
end
通用 for 循环

这种循环用于迭代表中的键值对。它使用 pairsipairs 函数来获取表中的键值对。

示例
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

2. while 循环

while 循环会在每次循环之前检查条件。只要条件为真,就会执行循环体。

示例
local i = 1
while i <= 10 do
    print(i)
    i = i + 1
end

3. repeat-until 循环

repeat-until 循环至少会执行一次循环体,然后在每次循环结束时检查条件。

示例
local i = 1
repeat
    print(i)
    i = i + 1
until i > 10

4. breakcontinue 语句

  • 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 中循环的基本用法。如果您需要更详细的解释或有其他问题,请随时提问!

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值