Lua學(xué)習(xí)筆記之運(yùn)算符和表達(dá)式
更新時(shí)間:2014年09月11日 11:42:13 作者:皂莢花
這篇文章主要介紹了Lua學(xué)習(xí)筆記之運(yùn)算符和表達(dá)式,本文在代碼中使用注釋對(duì)Lua的運(yùn)算符和表達(dá)式做了講解,需要的朋友可以參考下
本篇博客學(xué)習(xí)一下Lua的運(yùn)算符,比較簡(jiǎn)單,我將說(shuō)明直接寫(xiě)到了代碼中,代碼如下。
--算術(shù)運(yùn)算符
--二元運(yùn)算符:+ - * / ^ (加減乘除冪)
--一元運(yùn)算符:- (負(fù)值)
--這些運(yùn)算符的操作數(shù)都是實(shí)數(shù),Lua中沒(méi)有自增自減的運(yùn)算符。
--關(guān)系運(yùn)算符
-- < > <= >= == ~=
--這里需要注意的是不等于是用~=表示的
--這些操作符返回結(jié)果為false或者true;==和~=比較兩個(gè)值,如果兩個(gè)值類型不同,Lua認(rèn)為兩者不同;
--nil只和自己相等。Lua通過(guò)引用比較tables、userdata、functions。也就是說(shuō)當(dāng)且僅當(dāng)兩者表示同一個(gè)對(duì)象時(shí)相等。
--Lua比較數(shù)字按傳統(tǒng)的數(shù)字大小進(jìn)行,比較字符串按字母的順序進(jìn)行,
print("0" == 0) -- false
a = {1,2}
b = {1,2}
c = a
print(a==c) -->true
print(a==b) -->false
print(2 < 15 ) -- true
print("2" < "15" ) -- false
--邏輯運(yùn)算符
--and or not
--邏輯運(yùn)算符認(rèn)為false和nil是假(false),其他為真,0也是true.
--and和or的運(yùn)算結(jié)果不是true和false,而是和它的兩個(gè)操作數(shù)相關(guān)。
--a and b 如果a為false,則返回a,否則返回b
--a or b 如果a為true,則返回a,否則返回b
print(false and 13) --> false
print(4 or 5) --> 4
print(false or 5) --> 5
--一個(gè)很實(shí)用的技巧:C語(yǔ)言中的三元運(yùn)算符a ? b : c 在Lua中可以這樣實(shí)現(xiàn):(a and b) or c
local a = 1
local b = 2
local num = (a>b and a) or b
print(num) -->2
--連接運(yùn)算符
--..兩個(gè)點(diǎn)
--字符串連接,如果操作數(shù)為數(shù)字,Lua將數(shù)字轉(zhuǎn)成字符串。注意數(shù)字之間的空格
print("Hello ".."lua") --> Hello lua
print(0 .. 1) --> 01
最后說(shuō)明一下運(yùn)算符的優(yōu)先級(jí),給大家一張表參考,用到的時(shí)候查。

相關(guān)文章
Lua中類的實(shí)現(xiàn)原理探討(Lua中實(shí)現(xiàn)類的方法)
這篇文章主要介紹了Lua中類的實(shí)現(xiàn)原理探討(Lua中實(shí)現(xiàn)類的方法),本文同時(shí)講解了metatable、元方法等內(nèi)容,需要的朋友可以參考下2014-10-10
Lua基礎(chǔ)教程之表(Table)學(xué)習(xí)筆記
這篇文章主要介紹了Lua基礎(chǔ)教程之表(Table)學(xué)習(xí)筆記,本文來(lái)自個(gè)人總結(jié),需要的朋友可以參考下2014-09-09
Mac平臺(tái)中編譯安裝Lua運(yùn)行環(huán)境及Hello Lua實(shí)例
這篇文章主要介紹了Mac平臺(tái)中編譯安裝Lua運(yùn)行環(huán)境及Hello Lua實(shí)例,本文給出了兩種Hello Lua示例,一種是控制臺(tái)直接輸出,通過(guò)文件編譯輸出,需要的朋友可以參考下2014-10-10
Lua中使用元表(metatable)執(zhí)行算術(shù)類元方法實(shí)例
這篇文章主要介紹了Lua中使用元表(metatable)執(zhí)行算術(shù)類元方法實(shí)例,本文給出了加法、減法、乘法、除法、相反數(shù)、取模等內(nèi)容,需要的朋友可以參考下2014-09-09
Lua中的repeat...until循環(huán)語(yǔ)句使用教程
這篇文章主要介紹了Lua中的repeat...until循環(huán)語(yǔ)句使用教程,是Lua入門(mén)學(xué)習(xí)中的基礎(chǔ)教程,需要的朋友可以參考下2015-05-05

