C#中的foreach的用法

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();

}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章