濮阳杆衣贸易有限公司

主頁 > 知識庫 > Lua學(xué)習(xí)筆記之表達式

Lua學(xué)習(xí)筆記之表達式

熱門標簽:個人怎么在地圖標注需要的店鋪 漳州智云呼電話機器人 冀州市地圖標注 清朝地圖標注哈爾濱 武漢外呼防封系統(tǒng)多少錢 新岸線智能電銷機器人 怎么去除地圖標注 地圖標注大廈 百度地圖標注早餐區(qū)域

前言

這里總結(jié)的內(nèi)容和其它語言的基本類似,所以這里就只是基本的進行總結(jié)。不做詳細的講解。

算術(shù)操作符

Lua支持常規(guī)的算術(shù)操作符有:”+”(加法),”-”(減法),”*”(乘法),”/”(除法),”^”(指數(shù)),”%”(取模),一元的”-”(負號)。所有的這些操作符都用于實數(shù)。例如:x^0.5將計算x的平方根,x^3將計算x的3次方。

關(guān)系操作符

Lua提供的關(guān)系操作符有:””,”>”,”=”,”>=”,”==”,”~=”;所有這些操作符的運算結(jié)果都是true或false。

操作符==用于相等性測試,操作符~=用于不等性測試。這兩個操作符可以應(yīng)用于任意兩個值。如果兩個值具有不同的類型,Lua就認為它們是不相等的;特別需要說明的是,nil只與其自身相等。

對于table、userdata和函數(shù),Lua是作引用比較的。也就是說,只有當(dāng)它們引用同一個對象時,才認為它們相等。

邏輯操作符

Lua提供的邏輯操作符有and、or和not。與條件控制語句一樣,所有的邏輯操作符將false和nil視為假,而將其它的任何東西視為真。對于操作符and來說,如果它的第一個操作數(shù)為假,就返回第一個操作數(shù);不然就返回第二個操作數(shù)。對于操作符or來說,如果它的第一個操作數(shù)為真,就返回第一個操作數(shù);不然就返回第二個操作數(shù)。這里和C++等語言是存在區(qū)別的,Lua的邏輯操作符并不是簡單的返回true或false,而是返回操作數(shù)的值。例如以下代碼:

復(fù)制代碼 代碼如下:

print(4 and 5)               -->5
print(nil and 13)          -->nil
print(false and 13)     -->false
print(4 or 5)               -->4
print(false or 5)          -->5

and和or都使用“短路求值”,也就是說,它們只會在需要時才去評估第二個操作數(shù)。

字符串連接

要在Lua中連接兩個字符串,可以使用操作符“..”(兩個點)。如果其任意一個操作數(shù)是數(shù)字的話,Lua會將這個數(shù)字轉(zhuǎn)換成一個字符串。在Lua中,字符串是不可變的值,連接操作符只會創(chuàng)建一個新字符串,而不會對其原操作數(shù)進行任何修改。

table構(gòu)造式

構(gòu)造式是用于創(chuàng)建和初始化table的表達式。最簡單的構(gòu)造式就是一個空構(gòu)造式{},用于創(chuàng)建一個空table。構(gòu)造式還可以用于初始化數(shù)組,數(shù)組的下標從1開始。例如:

local tbDays ={"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}
print(tbDays[1])     -->Sunday
print(tbDays[2])     -->Monday
print(tbDays[3])     -->Tuesday
print(tbDays[4])     -->Wednesday
print(tbDays[5])     -->Thursday
print(tbDays[6])     -->Friday
print(tbDays[7])     -->Saturday

Lua還提供了一種特殊的語法用于初始化table:

復(fù)制代碼 代碼如下:

local tb1 = {x=10, y=20}
print(tb1.x)          -->10
print(tb1["x"])          -->10

除此之外,Lua還提供了一種更通用的格式,這種格式允許在方括號之間,顯式地用一個表達式來初始化索引值,例如:

復(fù)制代碼 代碼如下:

local tb1 = {["+"] = "add", ["-"] = "sub", ["*"] = "mul", ["/"] = "div"}
print(tb1["+"])

比如local tb1 = {x=10, y=20}這種構(gòu)造方式,其實是和local tb1 = {["x"] = 10, ["y"] = 20}是等價的。在實際編程中,這兩種構(gòu)造式,都可以替換的用。

總結(jié)

純粹的學(xué)習(xí)筆記,沒有什么可以多說的了。希望對大家學(xué)習(xí)Lua有用。

以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

您可能感興趣的文章:
  • 詳解Lua中的數(shù)據(jù)類型
  • Lua判斷數(shù)據(jù)類型的方法
  • 實現(xiàn)Lua中數(shù)據(jù)類型的源碼分享
  • Lua數(shù)據(jù)類型介紹
  • Lua中的基本數(shù)據(jù)類型詳細介紹
  • Lua學(xué)習(xí)筆記之?dāng)?shù)據(jù)類型
  • 深入探究Lua中的解析表達式
  • Lua教程(三):表達式和語句
  • Lua表達式和控制結(jié)構(gòu)學(xué)習(xí)筆記
  • Lua中的操作符和表達式總結(jié)
  • Lua基礎(chǔ)教程之賦值語句、表達式、流程控制、函數(shù)學(xué)習(xí)筆記
  • Lua學(xué)習(xí)筆記之運算符和表達式
  • Lua中基本的數(shù)據(jù)類型、表達式與流程控制語句講解

標簽:宣城 德宏 天門 金昌 濰坊 儋州 天門 臺灣

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Lua學(xué)習(xí)筆記之表達式》,本文關(guān)鍵詞  Lua,學(xué)習(xí),筆記,之,表達式,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Lua學(xué)習(xí)筆記之表達式》相關(guān)的同類信息!
  • 本頁收集關(guān)于Lua學(xué)習(xí)筆記之表達式的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    汉沽区| 锦州市| 盐亭县| 二手房| 界首市| 崇明县| 鲁山县| 诸城市| 修武县| 西青区| 正阳县| 道真| 洛阳市| 绥化市| 无锡市| 米易县| 乐陵市| 兴海县| 南投市| 长汀县| 信丰县| 五华县| 伊宁县| 治多县| 景谷| 陕西省| 巴里| 依兰县| 大埔县| 内乡县| 宁河县| 连南| 潮安县| 颍上县| 明水县| 安新县| 巢湖市| 应城市| 大英县| 黄龙县| 晋州市|