6、Erlang 中的条件表达式与异常处理

Erlang 中的条件表达式与异常处理

1. case 和 if 表达式

在 Erlang 编程中,模式匹配是一个常用的工具,它让代码简洁且一致。但有时为每个情况都定义单独的函数子句会很不方便,这时就可以使用 case if 表达式。

1.1 case 表达式

case 表达式的语法如下:

case Expression of
    Pattern1 [when Guard1] -> Expr_seq1;
    Pattern2 [when Guard2] -> Expr_seq2;
    ...
end

其计算过程为:首先计算 Expression 的值,假设结果为 Value 。然后依次将 Value Pattern1 (可选的 Guard1 )、 Pattern2 等进行匹配,直到找到匹配项。一旦找到匹配项,就会计算相应的表达式序列,该序列的计算结果就是 case 表达式的值。如果没有匹配的模式,则会抛出异常。

例如,对于 filter 函数,使用模式匹配定义如下:

filter(P, [H|T]) -
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值