表达式 - Rust By Example
Description: Rust by Example (RBE) is a collection of runnable examples that illustrate various Rust concepts and standard libraries.

## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

# 表达式

Rust 程序（主要）由一系列语句组成：

    fn main() {
        // 语句
        // 语句
        // 语句
    }

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 = {
            // 分号抑制了这个表达式，`()` 被赋值给 `z`
            2 * x;
        };

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