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
循环不同)。