Lua - 运算符

你好,编程新手们!今天,我们将踏上一段激动人心的旅程,探索Lua运算符的世界。如果你之前从未编写过代码,不用担心——我将作为你的友好向导,我们将一步步地探索这个主题。在本课结束时,你将能够像专业人士一样操作数据!

Lua - Operators

算术运算符

让我们从熟悉的内容开始:数学!Lua为我们提供了算术运算符,它们的工作方式就像你在数学课中使用的那样。

基本算术运算符

下面是Lua中基本算术运算符的表格:

运算符 描述 示例
+ 加法 5 + 3 = 8
- 减法 10 - 4 = 6
* 乘法 3 * 4 = 12
/ 除法 20 / 5 = 4
% 取模(余数) 17 % 5 = 2
^ 乘方 2 ^ 3 = 8

让我们看看它们是如何工作的:

print(5 + 3)  -- 输出: 8
print(10 - 4) -- 输出: 6
print(3 * 4)  -- 输出: 12
print(20 / 5) -- 输出: 4
print(17 % 5) -- 输出: 2
print(2 ^ 3)  -- 输出: 8

每一行执行不同的算术运算并打印结果。-- 符号表示注释,Lua会忽略它,但它帮助我们理解代码。

取模运算符

取模运算符(%)可能对你们中的一些人来说是新的。它给出了除法的余数。想象一下,它在问:“如果我除这些数,剩下什么?”例如,当我们用5除以17时,我们得到3余2。这就是为什么 17 % 5 等于2。

关系运算符

现在,让我们转向关系运算符。这些运算符用于比较值,并始终返回 truefalse

运算符 描述 示例
== 等于 5 == 5 是 true
~= 不等于 5 ~= 4 是 true
> 大于 7 > 3 是 true
< 小于 2 < 8 是 true
>= 大于或等于 5 >= 5 是 true
<= 小于或等于 4 <= 4 是 true

让我们试一试:

print(5 == 5)  -- 输出: true
print(5 ~= 4)  -- 输出: true
print(7 > 3)   -- 输出: true
print(2 < 8)   -- 输出: true
print(5 >= 5)  -- 输出: true
print(4 <= 4)  -- 输出: true

记住,在Lua中,我们使用 ~= 表示“不等于”,这与一些其他编程语言中使用 != 不同。

逻辑运算符

逻辑运算符用于组合条件语句。它们就像日常语言中的“和”、“或”和“非”。

运算符 描述
and 如果两个操作数都为 true,则为 true
or 如果至少有一个操作数为 true,则为 true
not 反转逻辑状态

下面是如何使用它们:

print(true and false)  -- 输出: false
print(true or false)   -- 输出: true
print(not true)        -- 输出: false

-- 我们也可以用变量
local x = 5
local y = 10
print(x < 10 and y > 5)  -- 输出: true
print(x > 10 or y < 5)   -- 输出: false

在最后一个示例中,x < 10 and y > 5 为 true,因为两个条件都为 true:x 小于 10,y 大于 5。

杂项运算符

Lua还有一些其他运算符,它们不适合归类到前面的类别中:

运算符 描述 示例
.. 连接(合并字符串) "Hello " .. "World" = "Hello World"
# 长度运算符 #"Hello" = 5

下面是它们的用法:

print("Hello " .. "World")  -- 输出: Hello World
print(#"Hello")             -- 输出: 5

连接运算符(..)在你想合并字符串时非常有用。长度运算符(#)告诉你字符串中有多少个字符。

Lua中的运算符优先级

就像在数学中一样,Lua有操作顺序。以下是从最高到最低的优先级:

  1. ^
  2. not # - (一元)
    • /
  3. ..
  4. < > <= >= ~= ==
  5. and
  6. or

这意味着在表达式 2 + 3 * 4 中,Lua会先做乘法(3 * 4 = 12),然后做加法(2 + 12 = 14)。

如果你想改变顺序,可以使用括号。例如:

print(2 + 3 * 4)     -- 输出: 14
print((2 + 3) * 4)   -- 输出: 20

在第二行中,括号告诉Lua先做加法,然后用结果乘以4。

就这样!你已经迈出了进入Lua运算符世界的第一步。记住,熟能生巧。尝试以不同的方式组合这些运算符,看看会发生什么。不要害怕犯错误——这就是我们学习的方式!

在我多年的教学经验中,我发现最优秀的程序员都是那些不怕实验的人。所以,大胆地玩转这些运算符,看看你能创造什么。谁知道呢?你可能会成为下一个伟大的Lua程序员!

Credits: Image by storyset