添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

C# foreach循环

  • foreach 循环简介 :C# 的 foreach 循环提供了一种简单、易读的方式来迭代数组和集合中的每个元素。
  • 工作原理 :foreach 循环通过 in 关键字迭代集合或数组中的元素,每次迭代自动选择下一个元素。
  • 适用性和优势 :相比于传统的 for 循环,foreach 循环在处理数组和集合时更易读、易理解,适用于数组和集合的遍历,特别是当不需要知道元素的索引时。
  • C# 提供了一种易于使用且更易读的循环替代方式——foreach 循环,用于在处理数组和集合时迭代数组/集合的项目。foreach 循环迭代每个项目,因此称为 foreach 循环。

    在深入了解 foreach 循环之前,请参阅:

  • C# for 循环
  • C# 数组
  • C# 集合
  • foreach 循环的语法

    foreach (元素 in 可迭代项)
    {
    // foreach 循环的主体
    }

    这里的可迭代项可以是数组或集合类。

    foreach 循环的工作原理

    与 foreach 循环一起使用的 in 关键字用于迭代 可迭代项 。in 关键字在每次迭代中从 可迭代项 中选择一个项目并存储在变量 元素 中。

    在第一次迭代中, 可迭代项 的第一个项目存储在元素中。在第二次迭代中,选择第二个元素,依此类推。

    foreach 循环执行的次数等于数组或集合中的元素数量。

    这里有一个使用 for 循环遍历数组的示例:

    示例 1:使用 for 循环打印数组

    using System;

    namespace Loop
    {
    class ForLoop
    {
    public static void Main(string[] args)
    {
    char[] myArray = {'H','e','l','l','o'};

    for(int i = 0; i < myArray.Length; i++)
    {
    Console.WriteLine(myArray[i]);
    }
    }
    }
    }

    同样的任务可以使用 foreach 循环完成。

    示例 2:使用 foreach 循环打印数组

    using System;

    namespace Loop
    {
    class ForEachLoop
    {
    public static void Main(string[] args)
    {
    char[] myArray = {'H','e','l','l','o'};

    foreach(char ch in myArray)
    {
    Console.WriteLine(ch);
    }
    }
    }
    }

    当我们运行这两个程序时,输出将是:

    H
    e
    l
    l
    o

    在上述程序中,foreach 循环遍历数组 myArray 。在第一次迭代中,选中第一个元素即 myArray[0] 并存储在 ch 中。

    类似地,在最后一次迭代中,选中最后一个元素即 myArray[4] 。在循环体内部,打印 ch 的值。

    当我们比较这两个程序时,使用 foreach 循环的程序更具可读性和易理解性。这是因为它的语法简单且表达性强。

    因此,当处理数组和集合时,foreach 循环比 for 循环更受青睐。

    示例 3:使用 foreach 循环遍历性别数组

    此程序计算男性和女性候选人的数量。

    using System;

    namespace Loop
    {
    class ForEachLoop
    {
    public static void Main(string[] args)
    {
    char[] gender = {'m','f','m','m','m','f','f','m','m','f'};
    int male = 0, female = 0;
    foreach (char g in gender)
    {
    if (g == 'm')
    male++;
    else if (g =='f')
    female++;
    }
    Console.WriteLine("男性数量 = {0}", male);
    Console.WriteLine("女性数量 = {0}", female);
    }
    }
    }

    当我们运行程序时,输出将是:

    男性数量 = 6
    女性数量 = 4

    示例 4:foreach 循环与列表(集合)

    此程序计算 List 中元素的总和。

    using System;
    using System.Collections.Generic;
    namespace Loop {
    class ForEachLoop {
    public static void Main(string[] args) {
    var numbers = new List<int>() { 5, -8, 3, 14, 9, 17, 0, 4 };
    int sum = 0;
    foreach (int number in numbers) {
    sum += number;
    }
    Console.WriteLine("总和 = {0}", sum);
    Console.ReadLine();
    }
    }
    }