9.IEnumerable可枚举接口 C#例子 WPF例子

cs 复制代码
        private async void Button_Click(object sender, RoutedEventArgs e)
        {

            // 调用时可以传入 List、Array、HashSet 等任何实现了 IEnumerable<string> 的集合
            List<string> myList = new List<string> { "A", "B" };
            ProcessItems(myList);

            string[] myArray = { "X", "Y" };
            ProcessItems(myArray);

        }

        public void ProcessItems(IEnumerable<string> items)
        {
            foreach (string item in items)
            {
                this.WriteLine(item);
            }
        }

代码介绍

这段代码展示了一个简单的事件处理程序和一个通用方法,用于处理实现了 IEnumerable<string> 接口的集合。

Button_Click 方法
  • 触发条件 :当按钮被点击时,Button_Click 方法会被触发。

  • 功能

    1. 创建一个 List<string> 集合 myList,并初始化为包含两个字符串 "A""B"

    2. 调用 ProcessItems 方法,传入 myList

    3. 创建一个字符串数组 myArray,并初始化为包含两个字符串 "X""Y"

    4. 再次调用 ProcessItems 方法,传入 myArray

ProcessItems 方法
  • 参数items 是一个实现了 IEnumerable<string> 接口的集合,可以是 List<string>string[] 或其他任何实现了该接口的集合类型。

  • 功能

    • 使用 foreach 循环遍历传入的集合 items

    • 对于集合中的每个字符串 item,调用 this.WriteLine(item) 方法将其输出。

特点
  • 通用性ProcessItems 方法可以处理任何实现了 IEnumerable<string> 接口的集合(如 List<string>string[]),展示了泛型接口的强大功能

这段代码演示了如何使用 IEnumerable<string> 接口来处理不同类型的数据集合,体现了泛型接口在提高代码复用性和灵活性方面的优势。

相关推荐
kylezhao201914 分钟前
C#序列化与反序列化详细讲解与应用
c#
JQLvopkk18 分钟前
C# 实践AI :Visual Studio + VSCode 组合方案
人工智能·c#·visual studio
故事不长丨22 分钟前
C#线程同步:lock、Monitor、Mutex原理+用法+实战全解析
开发语言·算法·c#
kingwebo'sZone27 分钟前
C#使用Aspose.Words把 word转成图片
前端·c#·word
大空大地20261 小时前
表达式与运算符
c#
梦帮科技1 小时前
OpenClaw 桥接调用 Windows MCP:打造你的 AI 桌面自动化助手
人工智能·windows·自动化
向上的车轮2 小时前
为什么.NET(C#)转 Java 开发时常常在“吐槽”Java:checked exception
java·c#·.net
春日见3 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
C++ 老炮儿的技术栈3 小时前
VS2015 + Qt 实现图形化Hello World(详细步骤)
c语言·开发语言·c++·windows·qt
心疼你的一切3 小时前
Unity异步编程神器:Unitask库深度解析(功能+实战案例+API全指南)
深度学习·unity·c#·游戏引擎·unitask