Labels

continuebreak 都可以选择接受一个标签参数,用来 终止嵌套循环:

  1. fn main() {
  2. let s = [[5, 6, 7], [8, 9, 10], [21, 15, 32]];
  3. let mut elements_searched = 0;
  4. let target_value = 10;
  5. 'outer: for i in 0..=2 {
  6. for j in 0..=2 {
  7. elements_searched += 1;
  8. if s[i][j] == target_value {
  9. break 'outer;
  10. }
  11. }
  12. }
  13. print!("elements searched: {elements_searched}");
  14. }
  • 请注意,loop 是唯一返回有意义的值的循环结构。 这是因为它保证至少被输入一次(与 whilefor 循环不同)。