【Rust】雙重循環break的問題

在單循環中使用break跳出循環,但如果遇到雙重循環或者更多重循環時怎麼辦呢?與其他語言類似,Rust使用標記標識跳出指定循環。如下所示:

fn main() {
    let a = vec![1;5];
    let b = vec![2;6];
    'outer: for i in a {
        println!("{}", i);
        'inner: for j in b.iter() {
            print!("{}", j);
            break 'outer;   // 跳出外層循環,如果不加標記,默認跳出最內層循環
        }
    }
}

可參考:Nesting and labels

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章