亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

Lua中的基本語法、控制語句總結

2024-07-21 23:04:11
字體:
來源:轉載
供稿:網友

前言

學習一門語言,首先就是從最基本的語法開始,這一篇將對Lua中的語句進行概要的總結。

賦值

賦值的基本含義是修改一個變量或一個table中字段的值,這個和其它語言沒有多少區別,但是對于Lua,有一個特性,它允許“多重賦值”,也就是一下子將多個值賦予多個變量,例如以下代碼:

 

復制代碼 代碼如下:

local x1, x2 = 2, 4
print(x1)     -->2
print(x2)     -->4

 

在多重賦值中,Lua先對等號右邊的所有元素求值,然后才執行賦值,例如以下用法,可以非常簡便的交換兩個元素的值:

 

復制代碼 代碼如下:

local x1, x2 = 2, 4
x1, x2 = x2, x1
print(x1)     -->4
print(x2)     -->2

 

Lua總是會將等號右邊值得個數調整到與左邊變量的個數相一致,規則是:如果值得個數少于變量的個數,那么多余的變量會被賦為nil;如果值得個數更多的話,那么多余的值會被忽略掉。

局部變量與塊

相對于全局變量,Lua同時也提供了局部變量。通過local語句來創建局部變量:

 

復制代碼 代碼如下:

i = 10     -->全局變量
local i = 10     -->局部變量

在Lua中,局部變量也是有作用范圍的,也就是說,出了局部變量的作用范圍,局部變量就會失去作用,這個和C++等高級語言是一樣的道理。我們在編程的過程中,也可以使用do…end來顯示的聲明一個塊,例如以下代碼:

 

 

復制代碼 代碼如下:

do
     local a1 = 10
     local a2 = 10
end          -->a1和a2的作用域到此結束

 

至于使用局部變量和全局變量,關系到編程風格和實際需要,這里不做多說。

控制結構

幾乎所有的語言都有控制結構,同樣,對于Lua的控制結構是非常簡單的。Lua提供了用于條件執行的if,循環的while、repeat和for。所有的控制結構都有一個顯式的終止符:if、for和while以end作為結尾,repeat以until作為結尾。特別注意,在Lua中是不支持switch結構的。

if then else

if語句先測試其條件,然后根據測試結果執行then部分或者else部分,else部分是可選的。如果要編寫嵌套的if,可以使用elseif,下面通過代碼示例來說明if的使用。

復制代碼 代碼如下:

if a < 0 then a = 0 end
if a < b then retuan a else return b end
 
if op == "+" then
     r = a + b
elseif op == "-" then
     r = a - b
elseif op == "*" then
     r = a * b
elseif op == "/" then
     r = a / b
end

 

while

Lua中的while與其它語言是一樣的,示例代碼如下:

 

復制代碼 代碼如下:

local a = 10
while a > 0 do
     a = a - 1
     -- Do something else
end

 

repeat

repeat就好比C++中的do…while結構,循環體至少會執行一次。repeat-until語句重復執行其循環體直到條件為真時結束。

在Lua中有兩種for語句的形式:數字型for和泛型for

數字型for

數字型for的語法如下:

 

復制代碼 代碼如下:

for var = exp1, exp2, exp3 do
     -- Do something
end

 

var從exp1變化到exp2,每次變化都以exp3作為步長進行遞增,并執行一次do…end之間的代碼。第三個表達式exp3是可選的,若不指定的話,Lua會將步長默認為1。例如以下代碼:

 

復制代碼 代碼如下:

for var = 1, 10 do
     print(var)
end
 
for var = 10, 1, -1 do
     print(var)
end

 

在使用for時,需要注意以下兩點:

1.for的exp1,exp2和exp3,這三個表達式是在循環開始前一次性求值得;并不會每次循環都進行求值;

2.控制變量var會被自動的聲明為for語句的局部變量,并且僅在循環體內可見。

泛型for

泛型for循環通過一個迭代器函數來遍歷所有值。在Lua的基礎庫中提供了ipairs,這是一個用于遍歷數組的迭代器函數。從外觀上看泛型for比較簡單,但其實它是非常強大的。通過不同的迭代器,幾乎可以遍歷所有的東西。標準庫提供了幾種迭代器,包括用于迭代文件中每行的io.lines、迭代table元素的pairs、迭代數組元素的ipairs和迭代字符串中單詞的string.gmatch等。當然了,我們也可以編寫自己的迭代器,在以后的文章中,我會總結如何編寫迭代器的。

break與return

break和return語句用于跳出當前的塊。這里的break、return和C++等語言是一樣的。break語句用于結束一個循環,return語句用于從一個函數中返回結果。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产成人精品在线| 日韩美女视频中文字幕| 欧美激情第99页| 国产精品第一区| 亚洲精品v欧美精品v日韩精品| 久久在线视频在线| 亚洲人成电影网站| 亚洲女人初尝黑人巨大| 欧美极品xxxx| 久久久影视精品| 亚洲一区二区久久久| 日韩最新免费不卡| 国产91ⅴ在线精品免费观看| 国产精品国产福利国产秒拍| 国产精品白丝jk喷水视频一区| 欧美成人精品在线| 亚洲国产97在线精品一区| 国产成人精品av| 免费91麻豆精品国产自产在线观看| 日韩视频免费中文字幕| 国产精品久久久久久久久久久不卡| 91在线精品播放| 欧美与黑人午夜性猛交久久久| 久久久人成影片一区二区三区观看| 久久精品最新地址| 高跟丝袜欧美一区| 亚洲一品av免费观看| 国产精品美乳一区二区免费| 欧美富婆性猛交| 日韩av在线一区| 欧美精品免费播放| 精品欧美一区二区三区| 国产亚洲精品va在线观看| 国产香蕉97碰碰久久人人| 黑人巨大精品欧美一区二区| 国产网站欧美日韩免费精品在线观看| 欧美性一区二区三区| 在线电影中文日韩| 懂色aⅴ精品一区二区三区蜜月| 欧洲永久精品大片ww免费漫画| 国外成人免费在线播放| 成人免费福利视频| 亚洲人成电影在线观看天堂色| 欧美激情高清视频| 亚洲国产日韩一区| 国产91精品黑色丝袜高跟鞋| 亚洲最新av在线网站| 日韩在线观看免费全| 亚洲夜晚福利在线观看| 日韩av一区二区在线| 北条麻妃一区二区三区中文字幕| 久久欧美在线电影| 日韩欧美高清视频| 日韩中文在线不卡| 国产精品福利小视频| 欧美精品生活片| 美女精品视频一区| 亚洲精品久久久久久久久久久| 欧美日韩国产限制| 韩日精品中文字幕| 国产精品亚洲片夜色在线| 91精品啪在线观看麻豆免费| 亚洲另类欧美自拍| 亚洲香蕉伊综合在人在线视看| 成人性生交大片免费观看嘿嘿视频| 亚洲综合在线中文字幕| 欧美大学生性色视频| 日韩高清免费观看| 欧美性猛交xxxx乱大交极品| 亚洲欧美激情四射在线日| 欧美一区二区影院| 亚洲精品国产综合区久久久久久久| 亚洲一区二区三区在线免费观看| 精品国产一区二区三区在线观看| 国产激情综合五月久久| 国产精品永久免费视频| 美日韩在线视频| 欧美在线精品免播放器视频| 久久久久国产精品一区| 亚洲人成电影网站色…| 亚洲国模精品一区| 78色国产精品| 色999日韩欧美国产| 日韩在线观看成人| 尤物99国产成人精品视频| 亚洲自拍偷拍色图| 欧美激情一区二区三区久久久| 亚洲va男人天堂| 日韩久久精品电影| 日韩精品一二三四区| 国产精品久久久久免费a∨| 在线播放精品一区二区三区| 日本成人精品在线| 亚洲级视频在线观看免费1级| 中文字幕欧美视频在线| 91在线国产电影| 亚洲成人黄色在线| 亚洲直播在线一区| 欧美性videos高清精品| 国产精品丝袜久久久久久不卡| 成人午夜在线影院| 国产中文字幕91| 日韩www在线| 国产精品日韩在线播放| 亚洲欧美日本另类| 久久免费视频在线| 久久99精品国产99久久6尤物| 成人福利在线视频| 青草青草久热精品视频在线网站| 91久久嫩草影院一区二区| 国产精品高潮呻吟久久av黑人| 日韩成人在线免费观看| 最新的欧美黄色| 欧美丝袜美女中出在线| 欧美精品激情在线| 久久影视三级福利片| 国产综合香蕉五月婷在线| 国产精品中文字幕久久久| 在线观看日韩欧美| 亚洲91av视频| 久久精品这里热有精品| 一区二区三区 在线观看视| 日韩大陆毛片av| 欧美成人激情视频| 亚洲加勒比久久88色综合| 亚洲男人天堂2023| 欧美激情a在线| 日韩中文字幕在线| 青青在线视频一区二区三区| 国产精品99久久久久久白浆小说| 美女999久久久精品视频| 久久久免费在线观看| 91欧美精品午夜性色福利在线| 精品夜色国产国偷在线| www日韩中文字幕在线看| 中文字幕亚洲情99在线| 亚洲国产欧美久久| 国内成人精品一区| 国产欧美久久久久久| 亚洲欧美另类中文字幕| 国产成人精品日本亚洲专区61| 欧美性xxxxxxxxx| 亚洲成人免费网站| 久久久国产精品亚洲一区| 人人爽久久涩噜噜噜网站| 国产成人在线亚洲欧美| 国产中文字幕日韩| 亚洲三级免费看| 欧美日韩第一页| 亚洲成人黄色网| 中文字幕亚洲一区| 欧美最猛黑人xxxx黑人猛叫黄| 国产福利成人在线| 国产专区欧美专区| 国产精品日韩av| 亚洲黄色在线看| 欧美有码在线观看| 中文字幕日韩精品在线| 成人免费自拍视频| 国产成人久久久精品一区| 日本欧美一二三区| 日韩女在线观看| www欧美日韩| 国产成人亚洲综合青青|