Lua - 运算符
-
简述
运算符是告诉解释器执行特定数学或逻辑操作的符号。Lua语言有丰富的内置运算符,并提供以下类型的运算符 -- 算术运算符
- 关系运算符
- 逻辑运算符
- 杂项运算符
本教程将一一讲解算术、关系、逻辑和其他杂项运算符。 -
算术运算符
下表显示了 Lua 语言支持的所有算术运算符。假设变量A 容纳 10 和变量 B 持有 20 然后 -运算符 描述 例子 + 添加两个操作数 A + B 给 30 - 从第一个操作数中减去第二个操作数 A - B 等于 -10 * 将两个操作数相乘 A * B 给 200 / 分子除以分数 B/A 等于 2 % 模运算符和整数除法后的余数 B % A 等于 0 ^ 指数运算符取指数 A^2 等于 100 - 一元 - 运算符充当否定 -A 等于 -10 -
关系运算符
下表显示了 Lua 语言支持的所有关系运算符。假设变量A 容纳 10 和变量 B 持有 20 然后 -运算符 描述 例子 == 检查两个操作数的值是否相等,如果是,则条件为真。 (A == B) 不为True。 ~= 检查两个操作数的值是否相等,如果值不相等则条件为真。 (A ~= B) 为True。 > 检查左操作数的值是否大于右操作数的值,如果是,则条件为真。 (A > B) 不正确。 < 检查左操作数的值是否小于右操作数的值,如果是,则条件为真。 (A < B) 为True。 >= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件为真。 (A >= B) 不为True。 <= 检查左操作数的值是否小于或等于右操作数的值,如果是则条件成立。 (A <= B) 为True。 -
逻辑运算符
下表显示了 Lua 语言支持的所有逻辑运算符。假设变量A 成立且可变 B 那么为假 -运算符 描述 例子 and 称为逻辑与运算符。如果两个操作数都不为零,则条件为真。 (A 和 B) 为False。 or 称为逻辑或运算符。如果两个操作数中的任何一个不为零,则条件变为真。 (A 或 B) 是正确的。 not 称为逻辑非运算符。用于反转其操作数的逻辑状态。如果条件为真,则逻辑非运算符将变为假。 !(A 和 B) 为True。 -
杂项运算符
Lua 语言支持的其他运算符包括 concatenation 和 length.运算符 描述 例子 .. 连接两个字符串。 a..b 其中 a 是“Hello”,b 是“World”,将返回“Hello World”。 # 返回字符串或表长度的一元运算符。 #"Hello" 将返回 5 -
Lua 中的运算符优先级
运算符优先级确定表达式中术语的分组。这会影响表达式的计算方式。某些运算符的优先级高于其他运算符;例如,乘法运算符的优先级高于加法运算符 -例如,x = 7 + 3 * 2;这里 x 被赋值为 13,而不是 20,因为运算符 * 的优先级高于 &plus,所以它首先乘以 3*2,然后加到 7。在这里,具有最高优先级的运算符出现在表格的顶部,具有最低优先级的运算符出现在底部。在表达式中,优先级更高的运算符将首先被评估。类别 运算符 关联性 一元 not # - 右到左 级联 .. 右到左 乘法 * / % 左到右 添加剂 + - 左到右 关系型 < > <= >= == ~= 左到右 等 == ~= 左到右 逻辑与 and 左到右 逻辑或 or 左到右