- Erlang 教程
- Erlang - 首页
- Erlang - 概述
- Erlang - 环境
- Erlang - 基本语法
- Erlang - Shell
- Erlang - 数据类型
- Erlang - 变量
- Erlang - 运算符
- Erlang - 循环
- Erlang - 决策
- Erlang - 函数
- Erlang - 模块
- Erlang - 递归
- Erlang - 数字
- Erlang - 字符串
- Erlang - 列表
- Erlang - 文件 I/O
- Erlang - 原子
- Erlang - 映射
- Erlang - 元组
- Erlang - 记录
- Erlang - 异常
- Erlang - 宏
- Erlang - 头文件
- Erlang - 预处理器
- Erlang - 模式匹配
- Erlang - 保卫
- Erlang - BIFS
- Erlang - 二进制
- Erlang - 函数
- Erlang - 进程
- Erlang - 邮件
- Erlang - 数据库
- Erlang - 端口
- Erlang - 分布式编程
- Erlang - OTP
- Erlang - 并发
- Erlang - 性能
- Erlang - 驱动程序
- Erlang - Web 编程
- Erlang 有用资源
- Erlang - 快速指南
- Erlang - 有用资源
- Erlang - 讨论
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 or true 将得到 true |
and | 这是逻辑“与”运算符 | True and false 将得到 false |
not | 这是逻辑“非”运算符 | not false 将得到 true |
xor | 这是逻辑异或“xor”运算符 | True xor false 将得到 true |
位运算符
Erlang 提供四个位运算符。以下是 Erlang 中可用的位运算符。
序号 | 运算符 & 描述 |
---|---|
1 |
band 这是按位“与”运算符 |
2 |
bor 这是按位“或”运算符 |
3 |
bxor 这是按位“异或”或“异或”运算符 |
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 | 左结合 |
==,/=,=<,<,>=,> |
广告