导入
运算符简介
让我们在这节课中认识一下 Perl 运算符。
什么是运算符?
运算符是一种可以接收一个或多个值(或表达式)并生成另一个值的符号,从而使整个结构本身成为一个表达式。例如,当你将两个数字 2 和 5 相加时,结果是 7。这个表达式的形式为 2+5=7。
运算符的类型
根据不同的用途,存在多种类型的运算符,包括:
- 算术运算符
- 关系运算符
- 逻辑运算符
- 赋值运算符
下图展示了 Perl 中各种运算符的种类:
算术运算符
正如其名称所示,算术运算符用于执行基本的数学运算。它们进一步分为以下两类:
- 二元运算符
- 一元运算符
二元运算符
二元运算符是指需要两个操作数并对其执行算术运算的运算符。
这里的“操作数”可以是变量名,也可以是常量,如 2、3 或其他任意常量。
下表列出了常见的算术运算符及其功能:
| 运算符 | 功能 | 示例 |
|---|---|---|
| + | 加法 | $a + $b |
| - | 减法 | $a - $b |
| * | 乘法 | $a * $b |
| / | 除法 | $a / $b |
| % | 取模(求余) | $a % $b |
| ** | 幂运算 | $a ** $b |
取模运算符(
%)返回$a除以$b后的余数。例如,“5 % 2” 的结果是 “1”。
运行下面的代码,查看这些算术运算符在 Perl 中的实际效果:
1$a = 10; 2$b = 4; 3print "\$a + \$b = ". ($a + $b); # 加法 4print "\n"; 5print "\$a - \$b = ".($a - $b); # 减法 6print "\n"; 7print "\$a * \$b = ". ($a * $b); # 乘法 8print "\n"; 9print "\$a / \$b = ". ($a / $b); # 除法 10print "\n"; 11print "\$a % \$b = ".($a % $b); # 取模,返回 $a / $b 的余数 12print "\n"; 13print "\$a ** \$b = ".($a ** $b); # 幂运算(10^4)= 10 * 10 * 10 * 10
在上述 print 语句中,. 用于将表达式的结果与双引号中的字符串拼接起来。
一元运算符
一元运算符是仅对一个操作数进行算术运算的运算符。
以下是两种常用的 一元运算符:
- 自增运算符:
++ - 自减运算符:
--
可以通过 ++ 运算符将变量值增加 1,也可以通过 -- 运算符将变量值减少 1。它们可以放在变量之前或之后,从而导致代码执行顺序不同。如下所示:
1$i = 1; 2print $i."\n"; # 输出 1 3 4# 前置自增:先将 $i 加 1,再使用新值 5print ++$i."\n"; # 输出 2 6 7# 前置自减:先将 $i 减 1,再使用新值 8print --$i."\n"; # 输出 1 9 10# 后置自增:先使用当前值,再将 $i 加 1 11print $i++."\n"; # 输出 1(但此时 $i 的值已变为 2) 12 13# 后置自减:先使用当前值,再将 $i 减 1 14print $i--."\n"; # 输出 2(但此时 $i 的值已变为 1)