運算子是乙個特殊的符號,用於告訴直譯器執行特定的數學或邏輯運算.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 ...