Erlang - 多表达式



if 表达式也允许同时评估多个表达式。Erlang 中此语句的通用形式如下程序所示:

语法

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

在 Erlang 中,条件是一个表达式,它计算结果为真或假。如果条件为真,则执行 statement#1。否则,评估下一个条件,依此类推。如果没有评估结果为,则评估defaultstatement

下图是上述语句的一般示意图。

Multiple Expression

以下程序是 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 后面。

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

  • 需要使用语句“end”来表示 if 块的结束。

上述程序的输出将为:

输出

A is less than B
erlang_decision_making.htm
广告