- 断言
- 断言是一种用于强化模式匹配的功能的结构,例如
- max(X, Y) when X > Y -> X; max(X, Y) -> Y.
- 当第一个句子匹配就输出 X,当第一个句子不匹配就尝试第二个子句。
- 断言是一种用于强化模式匹配的功能的结构,例如
- 断言序列
- 断言序列可以是单个的断言也可以是一系列用分号分开的断言序列。在断言集合G1; G2; ...; Gn中只要任何一个断言为 true,那么整个断言序列为 true.
- 断言谓词
- is_atom(X):判断 X 是原子
- is_binary(X):判断 X 是二进制数据
- is_constant(X):判断 X 是原子
- is_float(X):判断 X 是浮点数
- is_function(X):判断 X 是函数
- is_function(X, N):判断 X 是有 N 个参数的函数
- is_integer(X):判断 X 是整数
- is_list(X):判断 X 是列表
- is_number(X):判断 X 是整数或者浮点数
- is_pid(X):判断 X 是进程标识符
- is_port(X):判断 X 是端口
- is_reference(X):判断 X 是引用
- is_record(X, Tag):判断 X 是标记为 Tag 的记录
- is_record(X, Tag, N):判断 X 是标记为 Tag 大小为 N 的记录
- is_tuple(X):判断 X 是元祖
- 断言 BIF, 内置函数
- abs(X):X 的绝对值
- element(N, X):元祖 X 的第 N 个元素
- float(X):转化为浮点数
- hd(X):列表 X 的头部
- length(X):返回列表的长度
- node():当前节点
- node(X):创建 X 的节点, X可以使进程的标识符,引用或端口
- round(X):四舍五入
- self():当前进程的进程标识符
- size(X):X 的大小,X 为元祖或者二进制数据
- tl(X):返回列表的最后一个元素
- trunc:截取数据 X 的整数部分
- abs(X):X 的绝对值
- 断言样例
- f(X, Y) when is_integer(X), X>Y, Y<6 -> ...
- 当 X 是一个整数,且 X 大于 Y,且 Y 小于 6...
- X =:= dog; X =:= cat
- X是cat,或者是dog
- X是cat,或者是dog
- 使用布尔表达式的断言
- A >= 1.0 andalso A+1>B.
- A >= 1.0 orelse A+1>B.
- f(X, Y) when is_integer(X), X>Y, Y<6 -> ...
Erlang笔记(10) - 断言
最新推荐文章于 2024-09-08 23:59:35 发布