loop 表达式

最后是用于创建无限循环的 loop 关键字

在下例中,你必须 breakreturn 才能停止循环:

fn main() {
    let mut x = 10;
    loop {
        x = if x % 2 == 0 {
            x / 2
        } else {
            3 * x + 1
        };
        if x == 1 {
            break;
        }
    }
    println!("x: {x}");
}
  • 用一个值(例如 break 8)来中断 loop 并将其输出。
  • 请注意,loop 是唯一返回有意义的值的循环结构。 这是因为它保证至少被输入一次(与 whilefor 循环不同)。