以下為算術運算子 (arithmetic operator)
運算子 | 功能 | 範例 |
---|---|---|
+ | 加法 | $a + $b |
- | 減法 | $a - $b |
* | 乘法 | $a * $b |
/ | 除法 | $a / $b |
例如
$a = 33 $b = 22 $c = $a + $b # $c 會等於 55 $d = $a - $b # $d 會等於 11 $e = $a * $b # $e 會等於 726 $f = $a / $b # $f 會等於 1.5
如果是數字字串的話,同樣可以運用算術運算子,但字串中有非數字之時,結果會得到 0 。
以下為用於數字的比較運算子 (comparison operator)
運算子 | 功能 | 範例 |
---|---|---|
== | 判斷是否相等 | $a == $b |
!= | 判斷是否不相等 | $a != $b |
< | 判斷是否小於 | $a < $b |
> | 判斷是否大於 | $a > $b |
<= | 判斷是否小於或等於 | $a <= $b |
>= | 判斷是否大於或等於 | $a >= $b |
至於用於字串的比較運算子如下
運算子 | 功能 | 範例 |
---|---|---|
eq | 判斷是否相等 | $a eq $b |
ne | 判斷是否不相等 | $a ne $b |
lt | 判斷是否小於 | $a lt $b |
gt | 判斷是否大於 | $a gt $b |
le | 判斷是否小於或等於 | $a le $b |
ge | 判斷是否大於或等於 | $a ge $b |
比較字串就是依序比較每個字元的是否相等,大於小於則是比較字母順序,字母順序較後者為大。
另外有三個布林邏輯運算子 (boolean logic operator)
運算子 | 功能 | 範例 |
---|---|---|
&& | 邏輯且 | $a && $b |
|| | 邏輯或 | $a || $b |
! | 邏輯非 | !$a |
還有些常用的運算子,如下
運算子 | 功能 | 範例 |
---|---|---|
= | 指派 | $a = 1 |
. | 字串連接 | "a"." "."spoon" |
x | 字串複製 | "spoon" x 5 |
.. | 指定範圍 | 3 .. 6 |
例如
$a = "33"; # $a 為字串 "33" $b = $a."22"; # $b 為字串 "3322" $c = $a x 2; # $c 為字串 "3333" @d = 3 .. 6; # @d 為整數 3 到 6 的陣列
上面有 $c = $a x 2 之類的式子出現,這是因為運算子有計算的優先次序 (precedence) ,字串複製運算子 x 的優先順序在指派運算子 = 之前,因此這裡會先做字串複製,然後才將結果指派到變數 $c 之中。
運算式加上分號就是程式 (program) 中獨立的陳述 (statement) ,通常一行程式碼只會放一個陳述。 Perl 程式的執行單位就是陳述,由前而後,一個陳述接著一個陳述來執行。
然而許多控制結構 (control structure) 是屬於多行的複合陳述 (compound statement) ,我們先來看看控制結構中的選擇吧!
中英文術語對照 | |
---|---|
運算式 | expression |
運算元 | operand |
運算子 | operator |
算術運算子 | arithmetic operator |
比較運算子 | comparison operator |
布林邏輯運算子 | boolean logic operator |
優先次序 | precedence |
程式 | program |
陳述 | statement |
控制結構 | control structure |
複合陳述 | compound statement |
您可以繼續參考
基礎篇
相關目錄
回 Perl 入門指南
回 Perl 教材
回首頁
參考資料
http://perldoc.perl.org/perlop.html
http://www.tutorialspoint.com/perl/perl_operators.htm
沒有留言:
張貼留言