foreach 是 C# 中一种简洁、安全的循环结构,用于遍历数组、集合或其他可枚举类型(实现了
IEnumerable或
IEnumerable<t></t>的类型)。它不需要手动管理索引或迭代器,适合只读访问元素。
基本语法
foreach 循环的基本格式如下:foreach (元素类型 变量名 in 集合或数组)<br>{<br> // 操作变量名<br>}
每次循环,系统会自动从集合中取出一个元素赋值给变量,直到遍历完成。
遍历数组
数组是最常见的使用场景之一。例如遍历一个整型数组:int[] numbers = { 1, 2, 3, 4, 5 };foreach (int num in numbers)
{Console.WriteLine(num);
}
输出结果为每行一个数字:1 到 5。变量
num是只读副本,不能通过它修改原数组元素。
遍历集合(如 List)
foreach 同样适用于泛型集合,比如List<t></t>:
List<string> names = new List<string> { "Alice", "Bob", "Charlie" };</string></string>foreach (string name in names)
{Console.WriteLine(name);
}
输出三个人名。注意:在 foreach 遍历过程中,不能修改集合本身(如添加或删除元素),否则会抛出
InvalidOperationException。
注意事项和限制
使用 foreach 时需注意以下几点: 只能读取元素,不能直接修改集合中的项(尤其是值类型的数组) 遍历过程中禁止修改集合结构(增删元素) 适用于所有实现IEnumerable接口的类型,包括数组、List、Dictionary、HashSet 等 性能良好,代码清晰,推荐在无需索引时优先使用
如果需要修改元素或操作索引,建议使用 for 循环;若只需读取每个元素,foreach 是更优选择。
基本上就这些,简单易用但别踩坑。
