lua從入門到放棄 八 lua運算子

2021-10-07 18:39:55 字數 3949 閱讀 9560

運算子是乙個特殊的符號,用於告訴直譯器執行特定的數學或邏輯運算.lua提供了以下幾種運算子型別:

算術運算子

關係運算子

邏輯運算子

其它運算子

下表列出了lua語言中的常用算術運算子,假設a為10,b為20

操作符描述例項+

加號a+b=30-減號

a-b=-10*乘號

a*b=200/除號

a/b=0.5%取餘

a%b=0^乘冪

a^2=100-負號

-a=-10

a = 21

b = 10

print(

'a+b的值為:', a + b)

print(

'a-b的值為:', a - b)

print(

'a*b的值為:', a * b)

print(

'a/b的值為:', a / b)

print(

'a%b的值為:', a % b)

print(

'a^2的值為:', a ^ 2)

print(

'-a的值為:', -a)

執行結果如下:

下表列出了lua語言中常用的關係運算子,假設a為10,b為20

操作符描述

例項==

等於,檢測兩個值是否相等,相等返回true,否則返回false

a == b為false

~=不等於,檢測兩個值是否相等,相等返回false,否則返回true

a ~= b為true

>

大於,檢測左邊的值是否大於右邊的值,大於返回true,否則返回false

a > b為true

<

小於,檢測左邊的值是否小於右邊的值,小於返回true,否則返回false

a < b為false

>=

大於等於,檢測左邊的值是否大於等於右邊的值,大於等於返回true,否則返回false

a >= b為true

<=

小於等於,檢測左邊的值是否小於等於右邊的值,小於等於返回true,否則返回false

a <= b為false

a = 10

b = 20

if(a == b)

then

print(

'校驗== : a等於b'

)else

print(

'校驗== : a不等於b'

)end

if(a ~= b)

then

print(

'校驗~= : a不等於b'

)else

print(

'校驗~= : a等於b'

)end

if(a > b)

then

print(

'校驗》 : a大於b'

)else

print(

'校驗》 : a不大於b'

)end

if(a < b)

then

print(

'校驗< : a小於b'

)else

print(

'校驗< : a不小於b'

)end

if(a >= b)

then

print(

'校驗》= : a大於等於b'

)else

print(

'校驗》= : a不大於等於b'

)end

if(a <= b)

then

print(

'校驗<= : a小於等於b'

)else

print(

'校驗<= : a不小於等於b'

下表列出了lua中常用的邏輯運算子,假設a的值為true,b的值為false

操作符描述

例項and

邏輯與操作符,都為true,則返回true,否則返回false

(a and b)為false

or邏輯或操作符,有乙個以上為true,則返回true,否則返回false

(a or b)為true

not邏輯非操作符,與原結果相反,如果條件為true,邏輯非返回false

not(a and b)為true

下表列出了lua中的連線運算子與計算表和字串長度的運算子,假設a為』hello』,b為』world』

操作符描述例項…

連線運算子,用於拼接兩個字串

a…b結果為helloworld

#一元運算子,返回表或字串的長度

#a結果為5

a =

'hello'

b ='world'

dict =

print(

'a..b : ',a..b)

print(

'a的長度 : ',#a)

print(

'b的長度 : ',#b)

print(

'dict的長度 : ',#dict)

除了^和…其餘二元運算子都是左連線的

lua從入門到放棄 五 lua迴圈

lua語言提供了以下幾種迴圈方式 迴圈型別 描述while迴圈 在條件為true時,迴圈地執行某些語句,在執行前會先判斷條件是否為true for迴圈 重複執行指定語句,重複次數可在for語句中控制 repeat util 重複執行迴圈,直到指定的條件為真為止 迴圈巢狀 可以在迴圈內巢狀乙個或多個迴...

lua從入門到放棄 四 變數

變數在使用前,必須顯式地宣告變數,即建立該變數.編譯程式在執行 之前編譯器需要知道如何給語句變數開闢儲存區,用於儲存變數的值.lua變數有三種型別 全域性變數,區域性變數,表中的域.lua中的變數全是全域性變數,哪怕是語句塊和函式裡,除非顯式地用local宣告為區域性變數.區域性變數的作用域為從宣告...

Lua從入門到放棄 元表 操作符

廢話不多說,這篇就讓我們來看看有關元表操作符的問題。許多元表的索引是操作符 如,等 允許你使用表完成一些操作運算子。例如,我們想要乙個表支援乘法操作符 我們可以這樣做 t setmetatable for i 1,other do for v in ipairs t do table.insert ...