Erlang if语句多个表达式
if表达式也允许进行一次评估(计算)多个表达式。在 Erlang 这个语句的一般形式显示在下面的程序:
语法
if
condition1 ->
statement#1;
condition2 ->
statement#2;
conditionN ->
statement#N;
true ->
defaultstatement
end.
在 Erlang 中,条件是计算结果为真或假的表达式。如果条件为真,则 statement#1 会被执行。否则评估(计算)下一个条件表达式等等。如果没有一个表达式的计算结果为真,那么 defaultstatement 评估(计算)。
下图是上面给出的语句的一般流程示意图:
下面的程序是在 Erlang 中一个简单的 if 表达式的例子:
示例
-module(helloworld).
-export([start/0]).
start() ->
A = 5,
B = 6,
if
A == B ->
io:fwrite("A is equal to B");
A < B ->
io:fwrite("A is less than B");
true ->
io:fwrite("False")
end.
以下是上述程序需要说明的一些关键点
这里所使用的表达式是变量A和B的比较
-> 运算符需要在表达式之后
符号 ";" 需要在 statement#1 语句之后
-> 运算符需要在 true 表达式之后
语句 “end” 需要用来表示 if 块的结束
上面的代码的输出结果是:
- A is less than B