最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2015年04月10日 11:12:34   投稿:hebedich  
在Lua中,表達(dá)式包括:數(shù)值常量、字符串字面值、變量、單目和雙目運(yùn)算符,函數(shù)調(diào)用,也包括一些非傳統(tǒng)的函數(shù)定義和表結(jié)構(gòu)。今天我們就來詳細(xì)了解下lua中的表達(dá)式

前言

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

算術(shù)操作符

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

關(guān)系操作符

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

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

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

邏輯操作符

Lua提供的邏輯操作符有and、or和not。與條件控制語句一樣,所有的邏輯操作符將false和nil視為假,而將其它的任何東西視為真。對于操作符and來說,如果它的第一個(gè)操作數(shù)為假,就返回第一個(gè)操作數(shù);不然就返回第二個(gè)操作數(shù)。對于操作符or來說,如果它的第一個(gè)操作數(shù)為真,就返回第一個(gè)操作數(shù);不然就返回第二個(gè)操作數(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都使用“短路求值”,也就是說,它們只會(huì)在需要時(shí)才去評估第二個(gè)操作數(shù)。

字符串連接

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

table構(gòu)造式

構(gòu)造式是用于創(chuàng)建和初始化table的表達(dá)式。最簡單的構(gòu)造式就是一個(gè)空構(gòu)造式{},用于創(chuàng)建一個(gè)空table。構(gòu)造式還可以用于初始化數(shù)組,數(shù)組的下標(biāo)從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還提供了一種更通用的格式,這種格式允許在方括號之間,顯式地用一個(gè)表達(dá)式來初始化索引值,例如:

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

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

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

總結(jié)

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

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

相關(guān)文章

  • Luvit像Node.js一樣寫Lua應(yīng)用

    Luvit像Node.js一樣寫Lua應(yīng)用

    今天小編就為大家分享一篇關(guān)于Luvit像Node.js一樣寫Lua應(yīng)用,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • Lua教程(十一):模塊與包詳解

    Lua教程(十一):模塊與包詳解

    這篇文章主要介紹了Lua教程(十一):模塊與包詳解,本文講解了require函數(shù)、 編寫模塊的基本方法、使用環(huán)境、module函數(shù)等內(nèi)容,需要的朋友可以參考下
    2015-04-04
  • 使用Lua編寫Web端模板引擎的實(shí)例代碼分享

    使用Lua編寫Web端模板引擎的實(shí)例代碼分享

    這里我們給出一個(gè)使用Lua編寫Web端模板引擎的實(shí)例代碼分享,力求簡潔(核心代碼約為70行),僅實(shí)現(xiàn)最基本的模板功能:
    2016-06-06
  • Lua數(shù)據(jù)類型介紹

    Lua數(shù)據(jù)類型介紹

    這篇文章主要介紹了Lua數(shù)據(jù)類型介紹,本文講解了Lua中的nil(空)、boolean(布爾)、number(數(shù)字)、string(字符串)、table(表)、function(函數(shù))、thread(線程)、userdata(自定義類型)等數(shù)據(jù)類型,需要的朋友可以參考下
    2014-12-12
  • lua文件操作詳解

    lua文件操作詳解

    Lua中關(guān)于文件處理操作是本文要介紹的內(nèi)容,主要是來了解并學(xué)習(xí)lua中文件的相關(guān)操作,具體內(nèi)容的實(shí)現(xiàn)來看本文詳解。
    2016-03-03
  • 把Lua函數(shù)傳遞到C/C++中實(shí)例

    把Lua函數(shù)傳遞到C/C++中實(shí)例

    這篇文章主要介紹了把Lua函數(shù)傳遞到C/C++中實(shí)例,本文先是分析了需求,然后給出解決方法,需要的朋友可以參考下
    2014-11-11
  • Lua中獲取utf8字符串長度的方法和自定義函數(shù)

    Lua中獲取utf8字符串長度的方法和自定義函數(shù)

    這篇文章主要介紹了Lua中獲取utf8字符串長度的方法和自定義函數(shù),本文給出了代碼實(shí)例并講解了UTF8的編碼規(guī)則,需要的朋友可以參考下
    2015-04-04
  • 淺析Lua編程中的異常處理

    淺析Lua編程中的異常處理

    這篇文章主要介紹了淺析Lua編程中的異常處理,是Lua入門學(xué)習(xí)中的基礎(chǔ)知識(shí),要的朋友可以參考下
    2015-05-05
  • Lua中的一些常用函數(shù)庫實(shí)例講解

    Lua中的一些常用函數(shù)庫實(shí)例講解

    這篇文章主要介紹了Lua中的一些常用函數(shù)庫實(shí)例講解,本文講解了數(shù)學(xué)庫、table庫、字符串庫、I/O庫等常用函數(shù)庫,需要的朋友可以參考下
    2014-09-09
  • Lua判斷數(shù)據(jù)類型的方法

    Lua判斷數(shù)據(jù)類型的方法

    這篇文章主要介紹了Lua判斷數(shù)據(jù)類型的方法,本文講解了判斷數(shù)據(jù)類型的方法和Lua腳本語言的8種基本數(shù)據(jù)類型,需要的朋友可以參考下
    2015-04-04

最新評論

康保县| 东海县| 纳雍县| 仪陇县| 瑞安市| 沙雅县| 武隆县| 太谷县| 荣成市| 贺州市| 浮梁县| 灵山县| 东丽区| 乐平市| 兴和县| 天等县| 吴忠市| 兴安盟| 吉首市| 福建省| 平定县| 阜平县| 乡城县| 墨江| 宜川县| 甘南县| 徐汇区| 邛崃市| 石景山区| 泗阳县| 竹溪县| 镇雄县| 聂拉木县| 攀枝花市| 平谷区| 扎赉特旗| 晋宁县| 黑龙江省| 横山县| 锡林郭勒盟| 清镇市|