Erlang

串行编程

  • 常量
    • 数值
      • Integer
      • Float
    • Atom
  • 复合
    • tuple
    • List
  • 保护式
    • 子句
      • fun() when ...
    • 断言
      • atom(X) X 是一个原子式
      • constant(X) X 不是列表或元组
      • float(X) X 是一个浮点数
      • integer(X) X 是一个整数
      • list(X) X 是一个列表或 []
      • number(X) X 是一个整数或浮点数
      • pid(X) X 是一个进程标识符
      • port(X) X 是一个端口
      • reference(X) X 是一个引用
      • tuple(X) X 是一个元组
      • binary(X) X 是一段二进制数据
      • element/2, float/1, hd/1, length/1, round/1, self/0, size/1 trunc/1, tl/1, abs/1, node/1, node/0, nodes/0
  • 比较
    • X > Y X 大于 Y coerce
    • X < Y X 小于 Y coerce
    • X =< Y X 小于或等于 Y coerce
    • X >= Y X 大于或等于 Y coerce
    • X == Y X 等于 Y coerce
    • X /= Y X 不等于 Y coerce
    • X =:= Y X 等于 Y exact
    • X =/= Y X 不等于 Y exact
    • number < atom < reference < port < pid < tuple < list
    • 元组首先按大小排序,然后再按元素排序。列表的比较顺序是先头部,后尾部。
    • 如果比较运算符的两个参数都是数值类型且运算符为coerce型,则如果一个参数是 integer 另一个是 float , 那么 integer 将被转换为 float 再进行比较。
    • exact 类型的运算符则不做这样的转换。
  • 原语
    • case
      • case Expr of
      • Pattern1 [when Guard1] -> Seq1;
      • Pattern2 [when Guard2] -> Seq2;
      • ...
      • PatternN [when GuardN] -> SeqN
      • _ -> ...
      • end
    • If
      • if
      • Guard1 ->
      • Sequence1 ;
      • Guard2 ->
      • Sequence2 ;
      • ...
      • true -> ...
      • end
    • 算术表达式
      • :
运算符 描述 类型 操作数类型 优先
+ X + X 单目 混合 1
- X - X 单目 混合 1
X * Y X * Y 双目 混合 2
X / Y X / Y (浮点除法) 双目 混合 2
X div Y X 整除 Y 双目 整数 2
X rem Y X 除以 Y 的余数 双目 整数 2
X band Y X 与 Y 的位与 双目 整数 2
X + Y X + Y 双目 混合 3
X - Y X - Y 双目 混合 3
X bor Y X 与 Y 位或 双目 整数 3
X bxor Y X 与 Y 的位算数异或 双目 整数 3
X bsl N X 算数左移 N 位 双目 整数 3
X bsr N X 右移 N 位 双目 整数 3

列表编程

  • BIF
    • :
函数原型 作用
atom_to_list(A) 将原子式 A 转换为一个ASCII字符列表
float_to_list(F) 将浮点数 F 转换为一个ASCII字符列表
integer_to_list(I) 将整数 I 转换为一个ASCII字符列表
list_to_atom(L) 将ASCII字符列表 L 转换为一个原子式
list_to_float(L) 将ASCII字符列表 L 转换为一个浮点数
list_to_integer(L) 将ASCII字符列表 L 转换为一个整数
hd(L) 返回列表 L 的第一个元素
tl(L) 返回列表 L 的尾部
length(L) 返回列表 L 的长度


创建@

2011-03-31

最后修改@

2014-01-12

相同类目/Categories