if 表达式

if 表达式 的用法与其他语言中的 if 语句完全一样。

fn main() {
    let mut x = 10;
    if x % 2 == 0 {
        x = x / 2;
    } else {
        x = 3 * x + 1;
    }
}

此外,你还可以将 if 用作一个表达式。每个块的最后一个表达式 将成为 if 表达式的值:

fn main() {
    let mut x = 10;
    x = if x % 2 == 0 {
        x / 2
    } else {
        3 * x + 1
    };
}

由于 if 是一个表达式且必须有一个特定的类型,因此它的两个分支块必须有相同的类型。考虑在第二个示例中将 ; 添加到 x / 2 的后面,看看会出现什么情况。