Keyword loop

source ·
Expand description

无限循环。

loop 用于定义 Rust 中支持的最简单的循环类型。 它在其中运行代码,直到代码使用 break 或程序退出为止。

loop {
    println!("hello world forever!");
}

let mut i = 1;
loop {
    println!("i is {i}");
    if i > 100 {
        break;
    }
    i *= 2;
}
assert_eq!(i, 128);
Run

与 Rust 中的其他类型的循环 (whilewhile letfor) 不同,循环可以用作通过 break 返回值的表达式。

let mut i = 1;
let something = loop {
    i *= 2;
    if i > 100 {
        break i;
    }
};
assert_eq!(something, 128);
Run

循环中的每个 break 必须具有相同的类型。 如果未明确给出任何内容,则 break; 返回 ()

有关 loop 和常规循环的更多信息,请参见 Reference

另请参见 forwhile