目录

Dart Programming - 循环

有时,某些指令需要重复执行。 循环是一种理想的方法。 循环表示必须重复的一组指令。 在循环的上下文中,重复被称为iteration

下图说明了循环的分类 -

循环分类

让我们开始讨论Definite Loops。 迭代次数是确定/固定的definite loop称为definite loop

Sr.No 循环和描述
1 for循环

for循环是一个确定循环的实现。 for循环执行代码块指定的次数。 它可用于迭代一组固定的值,例如数组

2 for ... in循环

for ... in循环用于循环对象的属性。

继续,让我们现在讨论无限循环。 当循环中的迭代次数不确定或未知时,将使用不定循环。 可以使用以下方式实现无限循环:

Sr.No 循环和描述
1 while循环

每次指定的条件求值为true时,while循环都会执行指令。 换句话说,循环在执行代码块之前评估条件。

2 do…while循环

do ... while循环类似于while循环,只是do ... while循环不会在第一次循环执行时评估条件。

现在让我们继续讨论Dart的Loop Control Statements

Sr.No 控制声明和描述
1 break语句

break语句用于将控件从构造中取出。 在循环中使用break会导致程序退出循环。 以下是break语句的示例。

2 continue语句

continue语句跳过当前迭代中的后续语句,并将控制权带回循环的开头。

使用标签来控制流量

label只是一个标识符,后跟冒号(:),应用于语句或代码块。 标签可以与break一起使用并continue更精确地控制流量。

'continue''break'语句与其标签名称之间不允许换行。 此外,标签名称和关联循环之间不应该有任何其他语句。

示例:带有Break的标签

void main() { 
   outerloop: // This is the label name 
   for (var i = 0; i < 5; i++) { 
      print("Innerloop: ${i}"); 
      innerloop: 
      for (var j = 0; j < 5; j++) { 
         if (j > 3 ) break ; 
         // Quit the innermost loop 
         if (i == 2) break innerloop; 
         // Do the same thing 
         if (i == 4) break outerloop; 
         // Quit the outer loop 
         print("Innerloop: ${j}"); 
      } 
   } 
}

成功执行上述代码后,将显示以下output

Innerloop: 0
Innerloop: 0
Innerloop: 1
Innerloop: 2
Innerloop: 3
Innerloop: 1
Innerloop: 0
Innerloop: 1
Innerloop: 2
Innerloop: 3
Innerloop: 2
Innerloop: 3
Innerloop: 0
Innerloop: 1
Innerloop: 2
Innerloop: 3
Innerloop: 4

示例:带继续的标签

void main() { 
   outerloop: // This is the label name 
   for (var i = 0; i < 3; i++) { 
      print("Outerloop:${i}"); 
      for (var j = 0; j < 5; j++) { 
         if (j == 3){ 
            continue outerloop; 
         } 
         print("Innerloop:${j}"); 
      } 
   } 
}

成功执行上述代码后,将显示以下输出。

Outerloop: 0 
Innerloop: 0 
Innerloop: 1 
Innerloop: 2 
Outerloop: 1 
Innerloop: 0 
Innerloop: 1 
Innerloop: 2 
Outerloop: 2 
Innerloop: 0 
Innerloop: 1 
Innerloop: 2 
↑回到顶部↑
WIKI教程 @2018