lua从入门到放弃(八):lua运算符

    技术2026-01-01  1

    lua运算符

    运算符是一个特殊的符号,用于告诉解释器执行特定的数学或逻辑运算.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,否则返回falseA == B为false~=不等于,检测两个值是否相等,相等返回false,否则返回trueA ~= B为true>大于,检测左边的值是否大于右边的值,大于返回true,否则返回falseA > B为true<小于,检测左边的值是否小于右边的值,小于返回true,否则返回falseA < B为false>=大于等于,检测左边的值是否大于等于右边的值,大于等于返回true,否则返回falseA >= B为true<=小于等于,检测左边的值是否小于等于右边的值,小于等于返回true,否则返回falseA <= 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') end

    逻辑运算符

    下表列出了lua中常用的逻辑运算符,假设A的值为true,B的值为false

    操作符描述实例and逻辑与操作符,都为true,则返回true,否则返回false(A and B)为falseor逻辑或操作符,有一个以上为true,则返回true,否则返回false(A or B)为truenot逻辑非操作符,与原结果相反,如果条件为true,逻辑非返回falsenot(A and B)为true a = true b = true if(a and b) then print('a and b : true') else print('a and b : false') end if(a or b) then print('a or b : true') else print('a or b : false') end if(not (a and b)) then print('not(a and b) : true') else print('not(a and b) : false') end print('-----------------------------------') a = true b = false if(a and b) then print('a and b : true') else print('a and b : false') end if(a or b) then print('a or b : true') else print('a or b : false') end if(not (a and b)) then print('not(a and b) : true') else print('not(a and b) : false') end

    其它运算符

    下表列出了lua中的连接运算符与计算表和字符串长度的运算符,假设a为’Hello’,b为’World’

    操作符描述实例…连接运算符,用于拼接两个字符串a…b结果为HelloWorld#一元运算符,返回表或字符串的长度#a结果为5 a = 'Hello' b = 'World' dict = {a,b} print('a..b : ',a..b) print('a的长度 : ',#a) print('b的长度 : ',#b) print('dict的长度 : ',#dict)

    运算符优先级

    ^not-(unary)*/+-…<><=>===~=andor

    除了^和…其余二元运算符都是左连接的

    Processed: 0.010, SQL: 9