读Rust By Example(6)

表达式

Rust中有两种常见的语句,一种是用于声明变量绑定,另一种是带 ; 的表达式。

fn main() {  
    // 变量绑定
    let x = 5;

    // 表达式
    x;
    x + 1;
    15;
}

如果在块中的最后一个表达式加上了分号,那么返回的只会是 ()

样例

fn main() {  
    let x = 5u32;

    let y = {
        let x_squared = x * x;
        let x_cube = x_squared * x;

        // 给 `y` 赋值
        x_cube + x_squared + x
    };

    let z = {
        // The semicolon suppresses this expression and `()` is assigned to `z`
        2 * x;
    };

    println!("x is {:?}", x);
    println!("y is {:?}", y);
    println!("z is {:?}", z);
}