C# Foreach循环
示例
foreach将迭代实现的类的任何对象IEnumerable(请注意IEnumerable<T>从其继承的对象)。此类对象包括一些内置对象,但不限于:List<T>,T[](任何类型的数组),Dictionary<TKey,TSource>以及诸如IQueryable和ICollection等接口。
语法
foreach(ItemType itemVariable in enumerableObject)
statement;备注
类型ItemType不需要与项目的确切类型匹配,只需从项目的类型进行分配即可
相反的ItemType,可替代地var可使用将推断的物品从enumerableObject键入通过检查的通用参数IEnumerable执行
该语句可以是一个块,一个语句甚至是一个空语句(;)
如果enumerableObject未执行IEnumerable,则代码将无法编译
在每次迭代期间,当前项目都将强制转换为ItemType(即使未指定,但通过编译器推断var),如果该项目无法强制转换,InvalidCastException则将抛出。
考虑以下示例:
var list = new List<string>();
list.Add("Ion");
list.Add("Andrei");
foreach(var name in list)
{
Console.WriteLine("Hello " + name);
}等效于:
var list = new List<string>();
list.Add("Ion");
list.Add("Andrei");
IEnumerator enumerator;
try
{
enumerator = list.GetEnumerator();
while(enumerator.MoveNext())
{
string name = (string)enumerator.Current;
Console.WriteLine("Hello " + name);
}
}
finally
{
if (enumerator != null)
enumerator.Dispose();
}
热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语