本篇博客學(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í)候查。
標(biāo)簽:宜賓 武漢 新余 張掖 江西 黑龍江 嘉峪關(guān) 延邊
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Lua學(xué)習(xí)筆記之運(yùn)算符和表達(dá)式》,本文關(guān)鍵詞 Lua,學(xué)習(xí),筆記,之,運(yùn)算符,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。