日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Lua——循环和流程控制(if,for,while,break,goto,repeat...until)

發布時間:2024/4/17 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Lua——循环和流程控制(if,for,while,break,goto,repeat...until) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、if語句
    • 1.基本語法知識
    • 2.演示示例
  • 二、循環語句
    • 1.while循環
    • 2.for循環
    • 3.repeadt...until循環


一、if語句

1.基本語法知識

if語句要注意,在Lua里面0為true,其他為假

語法為:

if("條件") then"操作語句" elseif(條件) then"操作語句" else"操作語句" end

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

運行結果:

二、循環語句

1.while循環

(1)基本語法

while(condition) dostatements end

(2)示例演示

i=0 while(i < 10)doprint("i值為:",i)i = i+1--沒有++語法或者+=語法end

運行結果:

2.for循環

(1)基本語法
①數值for循環語法
var 從 exp1 變化到 exp2,每次變化以 exp3 為步長遞增 var,并執行一次 “執行體”。exp3 是可選的,如果不指定,默認為1。

for var=exp1,exp2,exp3 do <執行體> end

②泛型for循環
泛型 for 循環通過一個迭代器函數來遍歷所有值,類似foreach 語句。
i是數組索引值,v是對應索引的數組元素值。ipairs是Lua提供的一個迭代器函數,用來迭代數組。

a = {"one", "two", "three"} for i, v in ipairs(a) doprint(i, v) end

(2)示例演示

--數值for循環 --沒有指定步長,步長默認為1 print("第一個數值for循環:") for i=1,10doprint(i)end--數值for循環 --步長指定為2 print("第二個數值for循環:") for i=1,10,2doprint(i)end--泛型for循環 print("第一個泛型for循環:") table1={"abc","def","ghi","jkl","mno"} for i,v in ipairs(table1)doprint(i,v)end--泛型for循環 print("第二個泛型for循環:") for i,v in ipairs(table1)doprint(v)end--[[ --不允許指定索引的開始位置 for i=2,v in ipairs(table1)doprint(i,v)end --]]

運行結果:

3.repeadt…until循環

(1)基本語法
repeadt類似C語言的do…while循環
語法:

repeatstatements until( condition )

(2)示例演示

i=1 repeatprint("i值為:",i)i = i+1 until(i > 10)

運行結果:

4.break和goto
break和goto和C語言的作用一樣,break跳出最內層循環,
goto跳轉到其他語句,語法為:

:: Label :: goto Label

這里作簡單演示

--break演示 i=1 while(0)--0為true,死循環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("又一次進入第二個while循環")breakendendprint("這是帶goto的while外的語句")

運行結果:

goto到了here語句之后,會從here那里繼續向下一步一步的執行,所以會再次到第二個while循環里面

總結

以上是生活随笔為你收集整理的Lua——循环和流程控制(if,for,while,break,goto,repeat...until)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。