loop 表达式
最后是用于创建无限循环的 loop 关键字 。
在下例中,你必须 break 或 return 才能停止循环:
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是唯一返回有意义的值的循环结构。 这是因为它保证至少被输入一次(与while和for循环不同)。