breakcontinue

  • 如果你想提早跳出迴圈,可以使用 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 跳出外層迴圈。