Erlang運算子


運算子是告訴編譯器執行特定數學或邏輯操作的符號。
Erlang 有以下型別的運算子 -
  • 算術運算子
  • 關係運算子
  • 邏輯運算子
  • 位運算子

算術執行符

Erlang 語言支援正常的算術運算子類似於在其它語言中。以下是在 Erlang 中可用的算術運算子。

算術運算子範例

操作符 描述 範例
+ 兩個運算元相加 1 + 2 = 3
? 從第一個運算元減去第二個運算元 1 - 2 = -1
* 兩個運算元相乘 2 * 2 = 4
/
通過分子除以分母
2 / 2 = 1
rem
第二數除以第一數的餘數
3 rem 2 = 1
div
div元件將執行除法並返回整數部分
3 div 2 = 1

關係運算子

關係運算子允許物件比較。以下是在 Erlang 可用的關係運算子。

關係運算子範例

操作符 描述 範例
== 測試兩個物件是否相等 2 = 2 結果為 true
/= 測試兩個物件是否為不相等 3 /= 2 結果為 true
< 測試左邊物件是否小於右邊操作物件 2 < 3 結果為 true
=< 測試左邊物件是否小於或等於右邊操作物件 2 =<3 結果為 true
> 測試左邊物件是否大於右邊操作物件 3 > 2 結果為 true
>= 測試左邊物件是否大於或等於右邊操作物件 3 >= 2 結果為 true

邏輯運算子

這些邏輯運算子用於計算布林表示式。以下是在 Erlang 可用的邏輯運算。

邏輯運算子範例

操作符 描述 範例
or 邏輯 「或」操作符 true 或 true 結果為 true
and 邏輯 「與」操作符 True 與 false 結果為 false
not 邏輯 「非」操作符 非 false 結果為 true
xor 邏輯 「互斥或」操作符 True互斥或 false 結果為 false

位運算子

Erlang提供四個位運算子。以下是在 Erlang 可用的位運算子。

位運算子範例

S.No. 操作符 & 描述
1

band

位 「and」運算子

2

bor

 「or」 運算子

3

bxor

 「xor」或異運算子

4

bnot

按位元反運算子
以下是這些運算子真值表顯示 -
p q p & q p | q p ^ q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1

運算子優先順序

下表顯示了Erlang中運算子優先順序,以及它們一起關聯遞減優先順序。運算子優先順序用來確定在不帶括號表示式的計算順序。
運算子 關聯
:

#

bnot,not

/,*,div,rem,band,and 左關聯
+,-,bor,bxor,or,xor 左關聯
==,/=,=<,<,>=,>