1. 數(shù)字運(yùn)算
支持 +, -, *, /,^ 。 這些運(yùn)算符的操作數(shù)都是實(shí)數(shù)。
2. 連接運(yùn)算
連接兩個(gè)字符串,用”..”運(yùn)算符。
如果操作數(shù)為數(shù)字,Lua將數(shù)字轉(zhuǎn)換成字符串。
3. 賦值運(yùn)算
多變量一起賦值:
復(fù)制代碼 代碼如下:
a,b,c,d = ‘www.jb51.net', ‘Q群: 14624678 ′,1,2
變量交換:
復(fù)制代碼 代碼如下:
a,b=b,a
在默認(rèn)情況下,變量總是認(rèn)為是全局的。假如需要定義局部變量,則在第一次賦值的時(shí)候,需要用local說(shuō)明。如:
復(fù)制代碼 代碼如下:
local a,b,c = 1,2,3
a,b,c都是局部變量。
4. 邏輯運(yùn)算
復(fù)制代碼 代碼如下:
and, or, not
在Lua中,只有false和nil才計(jì)算為false,其它任何數(shù)據(jù)都計(jì)算為true,0也是true
and 和 or的運(yùn)算結(jié)果不是true和false,而是和它的兩個(gè)操作數(shù)相關(guān)。
a and b:如果a為false,則返回a;a true 返回b
a or b:如果 a 為true,則返回a;a false 返回b
模擬C語(yǔ)言中的語(yǔ)句:x = a? b : c,在Lua中,可以寫(xiě)成:x = a and b or c。
最有用的語(yǔ)句是: x = x or v,它相當(dāng)于:if not x then x = v end 。
5. 關(guān)系運(yùn)算
復(fù)制代碼 代碼如下:
> = >= == ~=
這些操作符返回的結(jié)果要么false要么true。
==和~=是比較兩個(gè)值,如果兩個(gè)值類型不同,Lua認(rèn)為兩者不同。
Lua比較數(shù)字按傳統(tǒng)的數(shù)字大小進(jìn)行,比較字符串按字母的順序進(jìn)行,但是字母順序依賴于本地環(huán)境。
如果使用關(guān)系運(yùn)算符來(lái)比較兩個(gè)table,只有兩個(gè)table是同一個(gè)對(duì)象的時(shí)候才能得到預(yù)期的結(jié)果,因?yàn)樽兞恐皇莟able對(duì)象的引用,就像指針一樣,不能直接比較存在于table中的值。
復(fù)制代碼 代碼如下:
> t_a = [ 'www.jb51.net', 'Q群:14624678 ']
> t_b = [ 'www.jb51.net', 'Q群:14624678 ']
> if t_a == t_b then
> print("true")
> else
> print("false")
> end
false
t_a與t_b是兩個(gè)完全不同的結(jié)構(gòu)。
復(fù)制代碼 代碼如下:
> t_a = [ 'www.jb51.net', '14624678 ']
> t_b = t_a
> if t_a == t_b then
> print("true")
> else
> print("false")
> end
true
t_b指向了同樣的對(duì)象t_a。
您可能感興趣的文章:- Lua中..和#運(yùn)算符的使用方法
- Lua中的邏輯運(yùn)算符使用詳解
- Lua中關(guān)系運(yùn)算符的使用教程
- Lua中算術(shù)運(yùn)算符的使用示例
- Lua學(xué)習(xí)筆記之運(yùn)算符和表達(dá)式
- Lua基礎(chǔ)之運(yùn)算符的使用示例