Erlang语言学习系列(四)

变量与模式匹配

1.Erlang中变量标志符应以大写字母开头。

2.所有变量为单一赋值变量;未绑定值前,为自由变量,可绑定任何类型值;一旦绑定,则永远不能改变。(变量是不是有点名不符实呢^-^)

3.“=”号在Erlang语言中为模式匹配运算符,表示进行一次模式匹配。

比如:

X = 2. %X为自由变量时,将2绑定给X,会使得模式匹配结果为true,因为2和2可以匹配。

X = 3. %此时X不是自由变量了,2和3不能匹配。

如下图,第一行匹配后,X绑定了2;而第二行用3和X绑定的2匹配,所以出现了不能匹配的例外错误。


这里的变量是不是和Java语言中的fina修饰的变量或C语言中的CONST定义常量有点类似呢?

4.结构数据类型与模式匹配,如下图所示:

5.特殊匹配举例


6.匿名变量“_”

可以在同一个匹配式中用匿名变量匹配多个不同的值,而不受单一绑定的影响,也不会出现匹配错误。而其匹配出的变量也不会引用。

在shell中f().命令可以取消所有已经绑定的变量。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值