Dart 循环
有时,某些指令需要重复执行,循环是一种理想的方法。
循环表示必须重复的一组指令。在循环的上下文中,重复被称为迭代 。
下图说明了循环的分类:
让我们开始讨论确定循环。迭代次数是固定的循环称为确定循环 。
序号 | 循环和描述 |
---|---|
1 | for 循环
for循环是一个明确的循环的实现。for循环执行代码块指定的次数。它可用于迭代一组固定的值,例如数组 |
2 | for ... in 循环
for ... in循环用于循环对象的属性。 |
下面我们来看看不确定循环。当循环中的迭代次数不确定或未知时,将使用不定循环。可以使用以下方式实现确定循环:
序号 | 循环和描述 |
---|---|
1 | while 循环
每次指定的条件求值为true时,while循环都会执行指令。换句话说,循环在执行代码块之前评估条件。 |
2 | do…while 循环
do ... while循环类似于while循环,只是do ... while循环不会在第一次循环执行时评估条件。 |
现在让我们继续讨论Dart的 循环控制语句 。
序号 | 控制声明和描述 |
---|---|
1 | break 语句
break语句用来作为控制了结构的。在循环中使用break会导致程序退出循环。以下是break语句的示例。 |
2 | continue 语句
continue语句跳过当前迭代的后续语句,并采取控制回到循环的开始。 |
使用标签来控制程序流程
标签是只是一个标识符,后跟一个冒号(:)被加到一个语句或代码块。标签可以与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}"); } } }
成功执行上述代码后,将显示以下输出 。
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
条件语句是在程序执行过程中判断设定的条件是否成立,根据判断结果执行不同的操作。下表是Dart中的条件语句:序号声明和说明1if 语句一个if语句由一个布尔表达式后跟一个或多个语句。2If...Else 语句一个if可以跟一个 ...