众所周知,C,C++,python等语言都有运算符,那么Lua也不例外,因为它是C写的嘛!
Lua分为主要三类运算符,分别是算术运算符,关系运算符,逻辑运算符,还有特殊运算符。
1、算术运算符有: + (加) -(减) *(乘) /(除) %(取模) ^(求幂) -(符号)
来看一个例子:test6.lua
num2=2 ;
print(num1+num2);
print(num1-num2);
print(num1*num2);
print(num1/num2);
print(num1%num2);
print(num1^num2);
print(-num1);
解释运行:
结果:
6
2
8
2.0
0
16.0
-4
2、关系运算符有:==(等于) ~=(不等于) >(大于) <(小于) >=(大于等于) <=(小于等于)
当比较结果成立返回true,否则返回false
来看一个例子: test6.lua
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);
解释运行:
结果:
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
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);
解释运行:
结果:
0
100
false
false
4、特殊运算符
.. 表示连接两个字符串 #表示返回字符串或者表的长度(注意,这里的长度不包括’\0′)
案例: test6.lua
str1=”Hello”;
str2=”World”;
–连接两个字符串
ret=str1..str2;
print(ret);
–获取连接后的字符串的长度
str_length=#ret ;
print(str_length);
解释运行:
结果:
HelloWorld
10
当然,lua的运算符也是有优先级的,优先级从高到底的顺序为:
^ not -(负号) * / + – .. < > <= >= ~= == and or
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接