Erlang多表達式

if表達式也允許進行一次評估(計算)多個表達式。在 Erlang 這個語句的一般形式顯示在下面的程序 -

語法

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

在 Erlang 中,條件是計算結果爲真或假的表達式。如果條件爲真,則 statement#1 會被執行。否則評估(計算)下一個條件表達式等等。如果沒有一個表達式的計算結果爲真,那麼 defaultstatement 評估(計算)。

下圖是上面給出的語句的一般流程示意圖:
Erlang多表達式

下面的程序是在 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