C# foreach
上次修改时间:2024 年 1 月 17 日
在本文中,我们将展示如何使用 C# 中的 foreach 语句和 forEach 方法循环遍历数据。
foreach (var val in vals)
{
...
}
foreach 语句对实现 IEnumerable 的集合中的每个元素执行一个语句或一个语句块。
public void ForEach (Action<T> action);
ForEach 方法对 List<T> 的每个元素执行指定的操作。
C# foreach 数组
在下面的示例中,我们使用 foreach 语句遍历数组的元素。
Program.cs
int[] vals = [1, 2, 3, 4, 5];
foreach (var val in vals)
{
Console.WriteLine(val);
}
该示例打印整数数组的所有元素。
$ dotnet run 1 2 3 4 5
C# foreach 二维数组
下一个示例循环遍历一个二维数组。
Program.cs
int[,] vals =
{
{1, 2, 3, 4, 5},
{6, 7, 8, 9, 10},
{11, 12, 13, 14, 15}
};
foreach (var e in vals)
{
Console.Write($"{e} ");
}
Console.WriteLine();
Console.WriteLine("------------------------------------");
foreach (int i in Enumerable.Range(0, vals.GetLength(0)))
{
foreach (int j in Enumerable.Range(0, vals.GetLength(1)))
{
Console.Write($"{vals[i, j]}");
}
Console.WriteLine();
}
我们有一个二维整数数组。 我们循环遍历这些值两次。
foreach (var e in vals)
{
Console.Write($"{e} ");
}
这里,我们逐个循环遍历元素。
foreach (int i in Enumerable.Range(0, vals.GetLength(0)))
{
foreach (int j in Enumerable.Range(0, vals.GetLength(1)))
{
Console.Write($"{vals[i, j]}");
}
Console.WriteLine();
}
使用两个 foreach 循环,我们循环遍历嵌套数组。
$ dotnet run 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ------------------------------------ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
C# foreach List
在下面的示例中,我们使用 foreach 语句循环遍历一个列表。
Program.cs
List<string> words = ["tea", "falcon", "book", "sky"];
foreach (var word in words)
{
Console.WriteLine(word);
}
我们打印字符串列表的所有元素。
$ dotnet run tea falcon book sky
C# foreach 列表的列表
在下一个示例中,我们循环遍历一个列表的列表。
Program.cs
List<List<string>> words =
[
new() {"tea", "falcon", "book", "sky"},
new() {"cup", "crown", "borrow", "moore"},
new() {"arm", "nice", "frost", "sea"}
];
foreach (var nested in words)
{
foreach (var word in nested)
{
Console.WriteLine(word);
}
}
要迭代列表的列表,我们使用两个 foreach 循环。
C# foreach 字典
以下示例使用 foreach 语句循环遍历字典的元素。
Program.cs
var domains = new Dictionary<string, string>
{
{"sk", "Slovakia"},
{"ru", "Russia"},
{"de", "Germany"},
{"no", "Norway"}
};
foreach (var pair in domains)
{
Console.WriteLine($"{pair.Key} - {pair.Value}");
}
Console.WriteLine("-----------------------");
foreach ((var Key, var Value) in domains)
{
Console.WriteLine($"{Key} - {Value}");
}
我们有一个域名字典。 使用 foreach 语句,我们循环遍历字典的键/值对。
$ dotnet run sk - Slovakia ru - Russia de - Germany no - Norway ----------------------- sk - Slovakia ru - Russia de - Germany no - Norway
C# forEach 数组
在下面的示例中,我们使用 forEach 方法遍历数组的元素。
Program.cs
int[] vals = [1, 2, 3, 4, 5]; Array.ForEach(vals, e => Console.WriteLine(e));
该示例打印整数数组的所有元素。 我们使用 Array.ForEach 方法。
C# forEach List
在下面的示例中,我们使用 forEach 方法循环遍历一个列表。
Program.cs
List<string> words = ["tea", "falcon", "book", "sky"]; words.ForEach(e => Console.WriteLine(e));
我们打印字符串列表的所有元素。
C# foreach 字典
以下示例使用 ForEach 循环遍历字典的元素。 在这种情况下,我们还使用 Linq。
Program.cs
var domains = new Dictionary<string, string>
{
{"sk", "Slovakia"},
{"ru", "Russia"},
{"de", "Germany"},
{"no", "Norway"}
};
domains.ToList().ForEach(pair => Console.WriteLine($"{pair.Key} - {pair.Value}"));
我们调用 Linq 的 ToList 方法将字典转换为列表,然后调用 ForEach 方法。
来源
在本文中,我们介绍了 C# 中的 foreach 语句和 forEach 方法。
作者
列出所有 C# 教程。