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/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

发表回复

登录后才能评论