Skip to content

Lua 运算符

运算符是一种特殊符号, 用于告诉解释器执行特定的数学或逻辑运算;

算术运算符

在 Lua 中常用的算术运算符如下所示:

操作符描述示例
+加法A + B
-减法A - B
*乘法A * B
/除法5 / 2 结果为2.5
%取余A % B
^A^2, A的二次方
-负号-A, 取相反数
//整除运算符(lua5.3及以上版本)5//2 结果为2

示例如下所示:

lua
-- 普通除法
a = 5/2
print(a)

-- 整除运算
b = 5//2
print(b)    -- 因为当前版本为lua 5.1.5 所以无法执行整除

关系运算符

Lua 常见运算符如下所示:

操作符描述示例
==等于A == B
~=不等于A ~= B
>大于A > B
<小于A < B
>=大于等于A >= B
<=小于等于A <= B

关系运算符返回结果均为boolean型;

逻辑运算符

在 Lua 中, 会将 false 和 nil 作为假, 会将 true 和 非nil 作为真; 以下是常见的逻辑运算符;

操作符描述符示例
and逻辑与A and B,需要A和B同时为true,结果才是true
or逻辑或A or B, A和B中有一个及以上为true时,结果为true,均为false时结果才是false
not逻辑非not A,若A为true则结果为false,若A为false则结果为true

其他运算符

如下列所示:

操作符描述符示例
..字符串连接符"Hello".." World"连接两个字符串为"Hello World"
#返回字符串或表的长度#"ytazwc", 得到结果为 6

示例如下:

lua
-- operator_test.lua

-- 定义字符串变量
str1 = "Hello"
str2 = " World"

-- 连接字符串
str = str1..str2
print("连接字符串str1和str2结果为: " .. str)

-- 求字符串str的长度
len = #str
print("字符串str长度为: " .. len)

结果如下所示: