Stories

Detail Return Return

Lua基礎之運算符的使用示例 - Stories Detail

眾所周知,C,C++,python等語言都有運算符,那麼Lua也不例外,因為它是C寫的嘛!

Lua分為主要三類運算符,分別是算術運算符,關係運算符,邏輯運算符,還有特殊運算符。

1、算術運算符有: + (加) -(減) *(乘) /(除) %(取模) ^(求冪) -(符號)

來看一個例子:test6.lua

num1 = 4 ;
num2 = 2 ;
print(num1+num2);
print(num1-num2);
print(num1*num2);
print(num1/num2);
print(num1%num2);
print(num1^num2);
print(-num1);

解釋運行:lua test6.lua

結果:

6
2
8
2.0
0
16.0
-4

2、關係運算符有: ==(等於) ~=(不等於) >(大於) <(小於) >=(大於等於) <=(小於等於)

當比較結果成立返回true,否則返回false

來看一個例子: test6.lua

num = 1 ;
num1 = 1;
num2 = 2;
num3 = 3; 
num4 = 4;
num5 = 5;
num6 = 6;
ret = num1 == num2 ;
print(ret);
ret = num1 ~= num2 ; 
print(ret);
ret = num3 > num2 ;
print(ret);
ret = num4 < num3 ; 
print(ret);
ret = num5 >= num6 ;
print(ret);
ret = num1 <= num ;
print(ret);

解釋運行:lua test6.lua

結果:

false
true
true
false
false
true

3、邏輯運算符有: and(邏輯與) or(邏輯或) not(邏輯非)

假設有A和B,如果A and B, 為真返回A,為假返回B

假設有A和B ,如果A or B , 為真返回A ,為假返回B

假設有A和B ,如果 not A , 為真返回true ,為假返回false

來看一個例子:test6.lua

num1 = 100 ;
num2 = 200 ;
num3 = 0 ;
ret = num1 and num3 ; 
print(ret);
ret = num1 or num3 ; 
print(ret);
ret = not num1 ;
print(ret);
ret = not(num1 and num2);
print(ret);

解釋運行:lua test6.lua

結果:

0
100
false
false

4、特殊運算符

.. 表示連接兩個字符串 #表示返回字符串或者表的長度(注意,這裏的長度不包括'\0')

案例: test6.lua

--定義兩個字符串
str1 = "Hello";
str2 = "World";
--連接兩個字符串
ret = str1..str2;
print(ret);
--獲取連接後的字符串的長度
str_length = #ret ;
print(str_length);

解釋運行: lua test6.lua

結果:

HelloWorld
10

當然,lua的運算符也是有優先級的,優先級從高到底的順序為:

^ not -(負號) * / + - .. < > <= >= ~= == and or

Add a new Comments

Some HTML is okay.