Lua 编程中的 Break 语句


我们希望中断或终止循环的执行时使用break语句。一旦到达break语句,控制权将从当前循环转移到循环之后编写的任何内容。该语句中断包含它的内部循环(forrepeatwhile);它不能在循环外部使用。中断后,程序将立即从该中断循环后面的点继续运行。

break语句主要用于条件语句和所有类型的循环。它几乎存在于所有流行的编程语言中。

语法

break

现在,我们考虑一个非常简单的示例,我们尝试遍历数组的元素,一旦我们发现数组的当前项等于我们试图搜索的数字,我们将中断循环,然后打印数组当前元素的值。

示例

考虑下面所示的示例 −

a = {11,12,13,14,15,16,17}
v = 16
local i = 1

while a[i] do
   if a[i] == v then break end
   i = i + 1
end

print(a[i])
print("Completed")

输出

16
Completed

现在,我们考虑一个更复杂的情况,即当遇到重复值时,我们希望遍历数组的元素并中断循环。

示例

考虑下面所示的示例 −

iterable = {a=1, doe1={name=1}, doe2={name=2}, doe3={name=2}}
var2 = 1
for i, v in pairs(iterable) do
   print('trying to match', i)
   if string.match(i,'doe') then
      print('match doe', i, v.name, var2)
      if v["name"] == var2 then
         txterr = "Invalid name for "..i
         duplicate = true
         print('found at i=', i)
      end
      if duplicate then
         print('breaking the loop')
         break
      end
   end
end

输出

trying to matchdoe3
match doedoe3  2   1
trying to matchdoe2
match doedoe2  2   1
trying to matcha
trying to matchdoe1
match doedoe1  1   1
found at i=    doe1
breaking the loop

更新于: 01-12-2021

653 次浏览

开启你的 职业

通过完成课程获得认证

开始
广告