VB.Net For Each…Next, Exit, Continue 语句

⚡ 智能摘要

VB.Net For Each 是一个 looping 该语句会针对数组或集合中的每个元素重复执行一次代码块,从而允许您依次读取每个元素而无需进行任何操作。 trac国王和索引。

  • 🔁 目的: 对集合或数组中的每个元素重复执行一次语句。
  • 🧩 语法: 循环从 For Each … In 开始,到对应的 Next 语句结束。
  • 📚 类别: For Each 循环遍历任何 IEnumerable 类型,例如数组、列表和字典。
  • 🪆 嵌套: 一个嵌套在另一个嵌套中,将每个外部元素与每个内部元素配对。
  • 流量控制: Exit For 退出循环;Continue For 跳到下一个项目。
  • 🤖 人工智能帮助: GitHub Copilot 和 IntelliCode 在 Visual Studio 2026 中,边输入边自动完成 For Each 循环。

VB.Net 的每个循环

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) 点击顶部栏的“开始”按钮运行代码。您应该会看到以下结果:

VB.Net For Each 循环示例输出

以下是代码截图:

VB.Net For Each 循环代码示例

的解释 Code:

  1. 创建一个名为 Module1 的模块。
  2. 启动主要子程序。
  3. 创建一个名为 myArray 的数组,其中包含一组 5 个整数。
  4. 创建一个名为 item 的整型变量。
  5. 使用 item 变量来迭代名为 myArray 的数组的项目。
  6. 通过上述语句在控制台上打印在数组中找到的项目。
  7. For Each 循环结束。
  8. 暂停控制台窗口一段时间,等待用户采取行动关闭窗口。
  9. 主要子程序结束。
  10. 模块结束。

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) 单击顶部栏中的“开始”按钮来执行代码。您应该得到以下输出:

VB.Net 嵌套 For Each 循环的输出

以下是代码截图:

VB.Net 嵌套 For Each 循环代码示例

代码说明:

  1. 创建一个名为 Module1 的模块。
  2. 启动主要子程序。
  3. 创建一个名为 nums 且包含一组整数的数组。
  4. 创建一个名为 names 的数组,其中包含一组名称。
  5. 创建一个变量 n,并使用它来迭代名为 nums 的数组中包含的项目。这是外层的 For Each 循环。
  6. 创建一个名为 st 的变量,并使用它来迭代名为 names 的数组中包含的项目。这是内部 For Each 循环。
  7. 合并两个数组中的项目。nums 数组中的每个项目将与 names 数组中的每个项目合并。ToString 函数帮助我们将从 nums 数组中读取的数字转换为字符串。“”帮助我们在每个组合后创建一个空格。组合是使用 &(与号)实现的。
  8. 内部 For Each 循环结束。
  9. 外部 For Each 循环结束。
  10. 暂停控制台窗口等待用户采取行动来关闭它。
  11. 主要子程序结束。
  12. 模块结束。

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) 点击顶部栏的“开始”按钮运行代码。您将获得以下结果:

VB.Net Exit For 和 Continue For 输出

以下是代码截图:

VB.Net Exit For 和 Continue For 代码示例

的解释 Code:

  1. 创建一个名为 module1 的模块。
  2. 启动主要子程序。
  3. 创建一个名为 nums 且包含一组整数的数组。
  4. 创建一个名为 n 的变量,然后我们用它来迭代数组 nums 中包含的元素。
  5. 使用 If…Then 条件检查变量 n 的值。如果该值介于 17(含 17)和 25(含 25)之间,迭代将跳至数组中的下一个项目。
  6. 跳过ping 上述值已在此处处理。这是执行跳过操作所必需的语句。这意味着对于已跳过的项,For Each 循环将不会运行。
  7. 结束 If 条件。
  8. 在控制台上打印从数组获取的值。 ToString 函数帮助我们将值从数字转换为字符串。 ” ” 将在每个打印值后创建一些空格。
  9. 使用 If…Then 条件检查迭代变量 n 的值是否为 37。
  10. 当上述条件为真时,即 n 的值为 37,则退出 For Each 循环。这意味着对数组项的迭代将停止。
  11. 上述 If 条件结束。
  12. For ... Each 语句结束。
  13. 暂停控制台窗口等待用户采取行动来关闭它。
  14. 主要子程序结束。
  15. 模块结束。

常见问题

For Each 循环没有索引,并且是只读的。For Next 循环使用数字计数器,支持 Step 关键字,并且可以按位置更改项目。

不。`for Each` 循环只能返回当前项,不能返回其位置。如果需要索引,请使用带有计数器的 `for Next` 循环。

不行。循环变量是只读的,所以在迭代过程中不能添加、删除或重新赋值。请改用 For Next 循环。

任何 IEnumerable 类型,包括一个 排列列表和字典。For Each 循环内部使用枚举器,因此只需一种语法即可读取所有类型。

执行过程不会继续;执行会在 `Next` 之后继续。如果集合的值为 `Nothing`,`For Each` 会抛出 `NullReferenceException` 异常。

对于数组,使用 `For Next` 可能略快一些,因为 `For Each` 会增加枚举器的开销。但这种速度差距可以忽略不计,因此为了代码可读性,建议优先使用 `For Each`。

是的。 GitHub 副驾驶 将纯英文注释转换为完整的 For Each 代码块。 Rev检查一下,确保集合和项目类型与您的数据匹配。

是的。Visual Studio 2026 将 Copilot 与 智商Code 输入时,实现整行上下文感知的 For Each 代码补全。

总结一下这篇文章: