Erlang - 多重表达式


if表达式还允许同时计算多个表达式。Erlang 中该语句的一般形式如以下程序所示 -

句法

if
condition1 ->
   statement#1;
condition2 ->
   statement#2;
conditionN ->
   statement#N;
true ->
   defaultstatement
end.

在 Erlang 中,条件是一个计算结果为 true 或 false 的表达式。如果条件为真,则将执行语句#1。否则评估下一个条件,依此类推。如果没有任何结果为,则评估默认语句。

下图是上述陈述的一般图解表示。

多重表达

以下程序是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 之间的比较。

  • -> 运算符需要跟在表达式后面。

  • ; _ 需要遵循声明#1。

  • -> 运算符需要遵循 true 表达式

  • 语句“end”需要在那里表示 if 块的结束。

上述程序的输出将是 -

输出

A is less than B
erlang_decision_making.htm