一、foreach遍曆數組
在C#中,遍曆數組可以使用foreach循環,它會自動遍曆數組的每個元素。
以下是遍歷整型數組的示例代碼:
int[] nums = {1, 2, 3, 4, 5}; foreach (int num in nums) { Console.WriteLine(num); }
上述示例中,定義了一個包含5個元素的整型數組nums,使用foreach循環遍歷輸出每個元素的值。
二、foreach遍歷時報集合已修改
在使用foreach遍歷集合或列表時,如果在遍歷過程中修改了集合,則會拋出”集合已修改”的異常錯誤。
以下是遍歷集合併刪除其中的元素的示例代碼:
List<int> nums = new List<int>{1, 2, 3, 4, 5}; foreach (int num in nums) { if (num % 2 == 0) { nums.Remove(num); } }
上述示例中,定義了一個包含5個元素的整型列表nums,使用foreach循環遍歷並刪除其中的偶數元素,會引發異常錯誤。
解決該問題的方法有兩種,第一種是在遍歷時創建一個新的列表,並將原列表中的元素複製到新列表中進行操作;第二種是在操作時使用for循環進行操作。
三、foreach遍歷二維數組
遍歷二維數組時需要使用嵌套foreach循環,內層循環遍歷每一行中的元素,外層循環遍歷每一行。
以下是遍歷整型二維數組的示例代碼:
int[,] nums = {{1, 2}, {3, 4}, {5, 6}}; foreach (int row in nums) { foreach (int num in row) { Console.WriteLine(num); } }
上述示例中,定義了一個包含3行2列的整型二維數組nums,使用嵌套foreach循環遍歷輸出每個元素的值。
四、foreach遍曆數組對象
數組對象是C#中的高級特性,通過使用對象數組,可以將不同類型的對象存儲在同一個數組中。
以下是遍歷包含不同對象的數組的示例代碼:
object[] objs = {"Hello, World!", 123, true}; foreach (object obj in objs) { Console.WriteLine(obj); }
上述示例中,定義了一個包含不同類型對象的數組objs,使用foreach循環遍歷輸出每個元素的值。
五、foreach遍歷集合
與數組類似,集合也可以使用foreach循環進行遍歷,遍歷時會自動跳過null元素。
以下是遍歷字符串集合的示例代碼:
List<string> strs = new List<string>{"Hello", "World", null, "!"}; foreach (string str in strs) { if (str != null) { Console.WriteLine(str); } }
上述示例中,定義了一個包含4個字符串元素的列表strs,使用foreach循環遍歷輸出每個非null元素的值。
六、foreach遍歷List集合
List集合是C#中一個常用的數據結構,它可以通過foreach循環遍歷。
以下是遍歷整型List集合的示例代碼:
List<int> nums = new List<int>{1, 2, 3, 4, 5}; foreach (int num in nums) { Console.WriteLine(num); }
上述示例中,定義了一個包含5個整型元素的List集合nums,使用foreach循環遍歷輸出每個元素的值。
七、foreach遍歷Map集合
Map集合是C#中的一種鍵值對數據結構,可以通過foreach循環遍歷。
以下是遍歷整型Map集合的示例代碼:
Dictionary<string, int> dict = new Dictionary<string, int>{ {"apple", 1}, {"banana", 2}, {"orange", 3} }; foreach (KeyValuePair<string, int> kvp in dict) { Console.WriteLine(kvp.Key + ": " + kvp.Value); }
上述示例中,定義了一個包含3個鍵值對的整型Map集合dict,使用foreach循環遍歷輸出每個鍵值對的鍵和值。
八、foreach遍歷對象
在C#中,遍歷對象需要使用反射技術,通過獲取對象的屬性和字段進行遍歷。
以下是遍歷自定義對象的示例代碼:
class Person { public string Name { get; set; } public int Age { get; set; } } Person person = new Person{Name="Tom", Age=20}; foreach (var prop in person.GetType().GetProperties()) { Console.WriteLine(prop.Name + ": " + prop.GetValue(person)); } foreach (var field in person.GetType().GetFields()) { Console.WriteLine(field.Name + ": " + field.GetValue(person)); }
上述示例中,定義了一個包含姓名和年齡屬性的Person類,創建了一個Person對象person,使用反射技術遍歷輸出對象的屬性和字段。
九、foreach遍曆數組詳解
遍曆數組是C#編程中的基本操作之一,通過使用foreach循環可以方便地遍曆數組中的所有元素。
以下是遍歷整型數組的詳細示例代碼:
int[] nums = {1, 2, 3, 4, 5}; foreach (int num in nums) { Console.WriteLine(num); }
上述示例中,定義了一個包含5個元素的整型數組nums,使用foreach循環遍歷輸出每個元素的值。
使用foreach遍曆數組時需要注意以下幾點:
1. foreach循環遍歷的數組必須是數組類型,不能是其他集合類型,否則會引發編譯錯誤;
2. foreach循環每次迭代會自動提取下一個元素,可將其賦給一個變量;
3. foreach循環只能讀取數組元素的值,不能修改,否則會引發編譯錯誤;
4. foreach遍曆數組時不必擔心數組越界的問題,因為foreach循環會在遍歷完成後自動退出循環。
十、js foreach遍歷選取
在JavaScript中,沒有直接實現foreach循環的方法,但可以通過使用for…in循環來實現,遍歷對象中的所有可枚舉屬性。
以下是使用for…in循環遍曆數組的示例代碼:
var nums = [1, 2, 3, 4, 5]; for (var i in nums) { console.log(nums[i]); }
上述示例中,定義了一個包含5個元素的數組nums,使用for…in循環遍歷輸出每個元素的值。
使用for…in循環遍曆數組時需要注意以下幾點:
1. for…in循環遍歷的是數組的索引,而不是數組元素本身;
2. 可以使用數組名加上索引值的方式來訪問數組元素的值;
3. 使用for…in循環遍曆數組時需要注意數組中可能存在的空值和未定義值,需要使用if語句進行判斷。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/308349.html