Labels
continue
和 break
都可以选择接受一个标签参数,用来 终止嵌套循环:
fn main() { let s = [[5, 6, 7], [8, 9, 10], [21, 15, 32]]; let mut elements_searched = 0; let target_value = 10; 'outer: for i in 0..=2 { for j in 0..=2 { elements_searched += 1; if s[i][j] == target_value { break 'outer; } } } print!("elements searched: {elements_searched}"); }
- 请注意,
loop
是唯一返回有意义的值的循环结构。 这是因为它保证至少被输入一次(与while
和for
循环不同)。