if ... else 表示式

朱莉婭最常見的條件是 ifelse 表示式。例如,下面我們實現歐幾里德演算法來計算最大公約數 ,使用條件來處理基本情況:

mygcd(a, b) = if a == 0
    abs(b)
else
    mygcd(b % a, a)
end

朱莉婭中的 ifelse 形式實際上是一個表示式,並且具有一個值; 該值是所採用分支上的尾部位置(即最後一個表示式)中的表示式。請考慮以下示例輸入:

julia> mygcd(0, -10)
10

在這裡,a0b-10。條件 a == 0true,所以第一個分支被採用。返回的值是 abs(b),即 10

julia> mygcd(2, 3)
1

在這裡,a2b3。條件 a == 0 是假的,所以第二個分支被採用,我們計算 mygcd(b % a, a),即 mygcd(3 % 2, 2)。當 3 除以 2 時,%運算子返回餘數,在這種情況下 1。因此我們計算 mygcd(1, 2),這次 a1b2。再次,a == 0 是假的,所以第二個分支被採用,我們計算 mygcd(b % a, a),這是 mygcd(0, 1)。這次,a == 0 終於返回了 abs(b),結果是 1