VB.Net For Each…Next, Exit, Continue 语句
VB.Net 的每个循环
VB.Net For Each 是一个 looping 语句。当需要对集合中的每个元素重复执行一组语句时,应使用此语句。您可以使用它来操作集合或数组中包含的所有元素。
VB.Net For Each…Next 语句的语法
此 VB.Net For Each 语句采用以下语法:
For Each item [ As data_type ] In group [ statement(s) ] [ Continue For ] [ statement(s) ] [ Exit For ] [ statement(s) ] Next [ item ]
在这里,
- 此
item是用于遍历集合中所有元素的变量。在 For Each 语句中它是必需的,但在 Next 语句中是可选的。 - 此
data_type是 数据类型 元素的。如果该项目尚未申报,则为必填项。 - 此
group是需要重复语句的集合。它是必需的。 - 此
statement(s)是可选的。它表示要为组中的每个项目执行的一个或多个语句。 - 此
Continue For将控制权转移到 For Each 循环的开头。这是可选的。 - 此
Exit For将控制权从 For Each 循环中转移出去。这是可选的。 - 此
Next标记 For Each 循环的结束。它是必需的。
如何在 VB.Net 中使用 For Each 循环
以下示例展示了如何在 VB.Net 中使用 For Each 循环。
步骤1) 创建一个新的控制台应用程序。
步骤2) 使用以下代码:
Module Module1 Sub Main() Dim myArray() As Integer = {10, 3, 12, 23, 9} Dim item As Integer For Each item In myArray Console.WriteLine(item) Next Console.ReadKey() End Sub End Module
步骤3) 点击顶部栏的“开始”按钮运行代码。您应该会看到以下结果:
以下是代码截图:
的解释 Code:
- 创建一个名为 Module1 的模块。
- 启动主要子程序。
- 创建一个名为 myArray 的数组,其中包含一组 5 个整数。
- 创建一个名为 item 的整型变量。
- 使用 item 变量来迭代名为 myArray 的数组的项目。
- 通过上述语句在控制台上打印在数组中找到的项目。
- For Each 循环结束。
- 暂停控制台窗口一段时间,等待用户采取行动关闭窗口。
- 主要子程序结束。
- 模块结束。
VB.Net 中的嵌套 For 循环
For Each 循环可以嵌套。当我们把一个 For Each 循环放进另一个 For Each 循环中时,就会发生嵌套。让我们用一个例子来演示一下。
步骤1) 创建一个新的控制台应用程序。
步骤2) 使用以下代码:
Module Module1 Sub Main() Dim nums() As Integer = {12, 23, 35} Dim names() As String = {"Guru99", "alice", "antony"} For Each n As Integer In nums For Each st As String In names Console.Write(n.ToString & st & " ") Next Next Console.ReadKey() End Sub End Module
步骤3) 单击顶部栏中的“开始”按钮来执行代码。您应该得到以下输出:
以下是代码截图:
代码说明:
- 创建一个名为 Module1 的模块。
- 启动主要子程序。
- 创建一个名为 nums 且包含一组整数的数组。
- 创建一个名为 names 的数组,其中包含一组名称。
- 创建一个变量 n,并使用它来迭代名为 nums 的数组中包含的项目。这是外层的 For Each 循环。
- 创建一个名为 st 的变量,并使用它来迭代名为 names 的数组中包含的项目。这是内部 For Each 循环。
- 合并两个数组中的项目。nums 数组中的每个项目将与 names 数组中的每个项目合并。ToString 函数帮助我们将从 nums 数组中读取的数字转换为字符串。“”帮助我们在每个组合后创建一个空格。组合是使用 &(与号)实现的。
- 内部 For Each 循环结束。
- 外部 For Each 循环结束。
- 暂停控制台窗口等待用户采取行动来关闭它。
- 主要子程序结束。
- 模块结束。
VB.Net Exit For 和 Continue For 语句
当您使用 Exit For 语句时,执行将离开 For Each … Next 循环,并且控制权将转移到 Next 语句之后的语句。
当您使用 Continue For 语句时,控制权将转移到循环的下一次迭代。让我们使用一个示例来演示这一点:
步骤1) 首先创建一个新的控制台应用程序。
步骤2) 使用以下代码:
Module Module1 Sub Main() Dim nums() As Integer = {10, 12, 14, 17, 19, 23, 26, 31, 33, 37, 40, 48} For Each n As Integer In nums If n >= 17 And n <= 25 Then Continue For End If Console.Write(n.ToString & " ") If n = 37 Then Exit For End If Next Console.ReadKey() End Sub End Module
步骤3) 点击顶部栏的“开始”按钮运行代码。您将获得以下结果:
以下是代码截图:
的解释 Code:
- 创建一个名为 module1 的模块。
- 启动主要子程序。
- 创建一个名为 nums 且包含一组整数的数组。
- 创建一个名为 n 的变量,然后我们用它来迭代数组 nums 中包含的元素。
- 使用 If…Then 条件检查变量 n 的值。如果该值介于 17(含 17)和 25(含 25)之间,迭代将跳至数组中的下一个项目。
- 跳过ping 上述值已在此处处理。这是执行跳过操作所必需的语句。这意味着对于已跳过的项,For Each 循环将不会运行。
- 结束 If 条件。
- 在控制台上打印从数组获取的值。 ToString 函数帮助我们将值从数字转换为字符串。 ” ” 将在每个打印值后创建一些空格。
- 使用 If…Then 条件检查迭代变量 n 的值是否为 37。
- 当上述条件为真时,即 n 的值为 37,则退出 For Each 循环。这意味着对数组项的迭代将停止。
- 上述 If 条件结束。
- For ... Each 语句结束。
- 暂停控制台窗口等待用户采取行动来关闭它。
- 主要子程序结束。
- 模块结束。






