foreach 语句为数组或对象集合中的每个元素重复一个嵌入语句组。foreach 语句用于循环访问集合以获取所需信息,但不应用于更改集合内容以避免产生不可预知的副作用。 能够应用的编程语言类别:Java、C# 、PHP、D语言(Phobos库)。 foreach语句是c#中新增的循环语句,他对于处理数组及集合等数据类型特别方便。 foreach语句的一般语法格式如下: foreach(数据类型 标识符 in 表达式) { 循环体 }。 此语句的形式如下: foreach (type identifier in expression) statement 其中: type identifier 的类型。 identifier 表示集合元素的迭代变量。如果迭代变量为值类型,则无法修改的只读变量也是有效的。 expression 对象集合或数组表达式。集合元素的类型必须可以转换为 identifier 类型。请不要使用计算为 null 的表达式。 而应计算为实现 IEnumerable 的类型或声明 GetEnumerator 方法的类型。在后一种情况中,GetEnumerator 应该要么返回实现 IEnumerator 的类型,要么声明 IEnumerator 中定义的所有方法。 statement 要执行的嵌入语句。 事例: int[]arr=newint[]{0,1,2,3,4}; foreach(int i in arr) { Console.Write(i); } C#中:foreach 针对引用类型地址的访问 如果当前方法中在访问当前引用类型的集合,在新调用的 方法中在修改当前集合的地址时,当前地址会依然存在,不符合C#中的对象的生命周期,一旦当前文件的引用地址被替换掉了,当前对象的空间就消失废弃了,但是,foreach(){ }会保留原先的集合的地址<地址应该也是有生命周期的>foreach 和for 就不一样! c#中:foreach举例 using System; class Number { static void Main() { int evenNum = 0, oddNum = 0; //定义并初始化一个一维数组 int[] arr = new int[] { 13, 16, 15, 78, 26, 65, 39 }; foreach (intk in arr) //提取数组中的整数 { if (k % 2 == 0) //判断是否为偶数 evenNum++; else oddNum++; } Console.WriteLine("偶数个数:{0} 奇数个数:{1}", evenNum, oddNum); Console.ReadKey(); } }
C#中的foreach
最新推荐文章于 2024-06-14 11:13:22 发布