foreach遍歷詳解

一、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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-03 14:48
下一篇 2025-01-03 14:48

相關推薦

  • Python遍歷集合中的元素

    本文將從多個方面詳細闡述Python遍歷集合中的元素方法。 一、for循環遍歷集合 Python中,使用for循環可以遍歷集合中的每個元素,代碼如下: my_set = {1, 2…

    編程 2025-04-29
  • Python如何遍歷字典中的key和value

    本文將詳細講解Python中如何遍歷字典中的key和value,包括多種遍歷方式以及在遍歷過程中的一些應用場景。 一、遍歷字典中的key和value 在Python中,字典是一種無…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • 二叉樹非遞歸先序遍歷c語言

    本文將為您詳細介紹二叉樹的非遞歸先序遍歷算法,同時提供完整的C語言代碼示例。通過本文,您將了解到二叉樹的先序遍歷算法,以及非遞歸實現的方式。 一、二叉樹的先序遍歷算法介紹 在介紹二…

    編程 2025-04-28
  • Python如何遍歷列表

    在Python編程中,列表是一種常用的數據類型,它允許我們存儲多個值。但是,我們如何遍歷列表並對其中的每個值進行操作呢? 一、for循環遍歷列表 fruits = [‘apple’…

    編程 2025-04-28
  • Python遍歷字典刪除元素

    本文主要介紹Python中如何遍歷字典並刪除元素。在實際應用中,遍歷字典並刪除元素是一種非常常見的操作,但需要注意的是,直接在字典中刪除元素可能會改變字典中其他元素的索引順序,因此…

    編程 2025-04-28
  • Python遍歷文件夾中的shp文件

    對於GIS分析領域的開發工程師,遍歷文件夾中的shp文件是一個常見的需求。Python提供了一種非常便捷的方法來實現這個功能。本文將從以下幾個方面進行講解: 一、`os`模塊的使用…

    編程 2025-04-27
  • Python中遍歷字符串中的數字兩位數及其應用

    本文將從多個方面詳細闡述Python中遍歷字符串中的數字兩位數的應用及實現方法。 一、提取字符串中的數字兩位數 Python中提取字符串中的數字兩位數可以使用正則表達式,具體代碼如…

    編程 2025-04-27
  • Python中for循環遍歷列表

    本文將全方位詳細介紹Python中for循環遍歷列表的方法和技巧,幫助您更加深入理解並靈活運用Python中的for循環。 一、for循環遍歷列表的基礎用法 在Python中使用f…

    編程 2025-04-27
  • Linux sync詳解

    一、sync概述 sync是Linux中一個非常重要的命令,它可以將文件系統緩存中的內容,強制寫入磁盤中。在執行sync之前,所有的文件系統更新將不會立即寫入磁盤,而是先緩存在內存…

    編程 2025-04-25

發表回復

登錄後才能評論