C# Foreach语句

简介: foreach语句表示收集一个集合中的各个元素,并针对各个元素执行内嵌语句。 语句的格式为: foreach(type identifier in expression)embedded-statement foreach(元素类型  变量名  in 集合或数组名) {语句} 其中类型(type)和标识符(identifier)用来声明循环变量,表达式(expre

foreach语句表示收集一个集合中的各个元素,并针对各个元素执行内嵌语句。

语句的格式为:

foreach(type identifier in expression)embedded-statement

foreach(元素类型  变量名  in 集合或数组名)

{语句}

其中类型(type)和标识符(identifier)用来声明循环变量,表达式(expression)对应集合。每执行一次内嵌语句,循环变量就依次取集合中的一个元素代入其中。在这里,循环变量是一个只读型局部变量,如果试图改变它的值或将它作为一个refout类型的参数传递,都将引发编译时的错误。

foreach语句中的expresssion必须是集合类型,如果该集合的元素类型与循环变量类型不一致,则必须有一个显示定义的从集合中的元素类型到循环变量元素类型的显式转换。

EG:

foreach (DataRow dr in ds2.Tables[0].Rows)

     {

                string BH=Convert.ToString(dr["数据库中某列名"]);

                if(BH.Equals(BB))

                {

                    dr["CHECKED"]= "1";

                }

            }

            gridControl2.DataSource = ds2.Tables[0].DefaultView;

        }

Foreach的典型的问题:

System.InvalidOperationException: 集合已修改;可能无法执行枚举操作。

相关文章
|
8月前
|
编译器 数据处理 C#
C#中的异步流:使用IAsyncEnumerable<T>和await foreach实现异步数据迭代
【1月更文挑战第10天】本文介绍了C#中异步流的概念,并通过使用IAsyncEnumerable<T>接口和await foreach语句,详细阐述了如何异步地迭代数据流。异步流为处理大量数据或需要流式处理数据的场景提供了一种高效且非阻塞性的方法,使得开发者能够更优雅地处理并发和数据流问题。
|
2月前
|
安全 编译器 程序员
C# 中 foreach 循环和 for 循环深度比较
为什么建议你多数情况下使用 foreach 进行遍历循环?看完你就明白了
C#中For循环和Foreach循环的区别
C#中For循环和Foreach循环的区别
137 0
|
8月前
|
C# 图形学
【Unity 3D】C#中while do while for foreach等循环语句的讲解(附测试代码)
【Unity 3D】C#中while do while for foreach等循环语句的讲解(附测试代码)
262 0
C# for和foreach两种循环的效率问题
C# for和foreach两种循环的效率问题
|
算法 C#
【愚公系列】2021年11月 C#版 数据结构与算法解析 for和foreach性能分析
【愚公系列】2021年11月 C#版 数据结构与算法解析 for和foreach性能分析
164 0
【愚公系列】2021年11月 C#版 数据结构与算法解析 for和foreach性能分析
|
存储 程序员 编译器
小解c# foreach原理
小解c# foreach原理
183 0
|
C# 编译器
C#:foreach语句,yield语句
原文:C#:foreach语句,yield语句 1. foreach语句 C#编译器会把foreach语句转换为IEnumerable接口的方法和属性。 1 foreach (Person p in persons) 2 { 3 Console.WriteLine(p); 4 } foreach语句会解析为下面的代码段。
1043 0
|
C#
C#实现在foreach中删除集合中的元素
C#实现在foreach中删除集合中的元素 1 2 3 4 5 6 7 8 List str = new List(); str.
1730 0