Dart 编程 - 循环



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

下图说明了循环的分类 -

Classification Of Loops

让我们从确定循环开始讨论。迭代次数确定/固定的循环称为确定循环

序号 循环和描述
1 for 循环

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

2 for...in 循环

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

接下来,让我们讨论不确定循环。当循环中的迭代次数不确定或未知时,使用不确定循环。不确定循环可以使用 - 实现。

序号 循环和描述
1 while 循环

while 循环每次指定的条件计算结果为真时都执行指令。换句话说,循环在执行代码块之前评估条件。

2 do…while 循环

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

现在让我们继续讨论 Dart 的循环控制语句

序号 控制语句和描述
1 break 语句

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

2 continue 语句

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

使用标签控制流程

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

‘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}"); 
      } 
   } 
}

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

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

示例:带 Continue 的标签

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 
广告

© . All rights reserved.