break
和 continue
continue
以及 break
都可以選擇性地接收一個迴圈標籤,用來跳出巢狀迴圈中的某一層:
fn main() { let v = vec![10, 20, 30]; let mut iter = v.into_iter(); 'outer: while let Some(x) = iter.next() { println!("x: {x}"); let mut i = 0; while i < x { println!("x: {x}, i: {i}"); i += 1; if i == 3 { break 'outer; } } } }
在這個範例中,內層迴圈經過三次迭代後,我們使用 break
跳出外層迴圈。