Lua——循环和流程控制(if,for,while,break,goto,repeat...until)
文章目錄
- 一、if語句
- 1.基本語法知識
- 2.演示示例
- 二、循環(huán)語句
- 1.while循環(huán)
- 2.for循環(huán)
- 3.repeadt...until循環(huán)
一、if語句
1.基本語法知識
if語句要注意,在Lua里面0為true,其他為假
語法為:
2.演示示例
示例:
if(0) thenprint("0為true") elseprint("0為false") endif( 1== 2)--注意if語句和elseif語句都要配合then,else語句不需要配合then thenprint("1 == 2為true") elseif(1 == 3) thenprint("1 == 3為true") elseprint("1既不等于2也不等于3") end運(yùn)行結(jié)果:
二、循環(huán)語句
1.while循環(huán)
(1)基本語法
while(condition) dostatements end(2)示例演示
i=0 while(i < 10)doprint("i值為:",i)i = i+1--沒有++語法或者+=語法end運(yùn)行結(jié)果:
2.for循環(huán)
(1)基本語法
①數(shù)值for循環(huán)語法
var 從 exp1 變化到 exp2,每次變化以 exp3 為步長遞增 var,并執(zhí)行一次 “執(zhí)行體”。exp3 是可選的,如果不指定,默認(rèn)為1。
②泛型for循環(huán)
泛型 for 循環(huán)通過一個迭代器函數(shù)來遍歷所有值,類似foreach 語句。
i是數(shù)組索引值,v是對應(yīng)索引的數(shù)組元素值。ipairs是Lua提供的一個迭代器函數(shù),用來迭代數(shù)組。
(2)示例演示
--數(shù)值for循環(huán) --沒有指定步長,步長默認(rèn)為1 print("第一個數(shù)值for循環(huán):") for i=1,10doprint(i)end--數(shù)值for循環(huán) --步長指定為2 print("第二個數(shù)值for循環(huán):") for i=1,10,2doprint(i)end--泛型for循環(huán) print("第一個泛型for循環(huán):") table1={"abc","def","ghi","jkl","mno"} for i,v in ipairs(table1)doprint(i,v)end--泛型for循環(huán) print("第二個泛型for循環(huán):") for i,v in ipairs(table1)doprint(v)end--[[ --不允許指定索引的開始位置 for i=2,v in ipairs(table1)doprint(i,v)end --]]運(yùn)行結(jié)果:
3.repeadt…until循環(huán)
(1)基本語法
repeadt類似C語言的do…while循環(huán)
語法:
(2)示例演示
i=1 repeatprint("i值為:",i)i = i+1 until(i > 10)運(yùn)行結(jié)果:
4.break和goto
break和goto和C語言的作用一樣,break跳出最內(nèi)層循環(huán),
goto跳轉(zhuǎn)到其他語句,語法為:
這里作簡單演示
--break演示 i=1 while(0)--0為true,死循環(huán)doprint("i值為:",i)i = i+1if(i == 5)thenbreakendend--goto演示 ::here:: print("這是here下的第一個語句")print("這是here下的第二個語句")while(0)doprint("i值為:",i)i = i+1if(i == 10)thengoto hereendif(i == 11)thenprint("又一次進(jìn)入第二個while循環(huán)")breakendendprint("這是帶goto的while外的語句")運(yùn)行結(jié)果:
goto到了here語句之后,會從here那里繼續(xù)向下一步一步的執(zhí)行,所以會再次到第二個while循環(huán)里面
總結(jié)
以上是生活随笔為你收集整理的Lua——循环和流程控制(if,for,while,break,goto,repeat...until)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Lua——table(表)的使用
- 下一篇: Lua——运算符