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> 接口来处理不同类型的数据集合,体现了泛型接口在提高代码复用性和灵活性方面的优势。

相关推荐
大鹏说大话17 小时前
Java 锁膨胀机制深度解析:从偏向锁到重量级锁的进化之路
开发语言·c#
新手886017 小时前
Oracle VirtualBox虚拟机安装 和 安装 window11版本虚拟机 及 启用EFI和硬盘无法使用 问题
服务器·windows·计算机网络·安全·虚拟机
门豪杰17 小时前
Windows下配置针对WSL的cc-switch
windows·claude·claude code·cc-switch·cc switch
姓王名礼18 小时前
一份 Windows/macOS/Linux 完整安装 + 运行 + 对接 WebUI 的步骤
linux·windows·macos
开开心心就好18 小时前
绿色版PDF多功能工具,支持编辑转换
人工智能·windows·pdf·ocr·excel·语音识别·harmonyos
武藤一雄18 小时前
WPF处理耗时操作的7种方法
microsoft·c#·.net·wpf
武藤一雄19 小时前
C#常见面试题100问 (第一弹)
windows·microsoft·面试·c#·.net·.netcore
brucelee18621 小时前
Install OpenLM AI module management on Windows
人工智能·windows
l1t21 小时前
DeepSeek总结的用 C# 构建 DuckDB 插件说明
前端·数据库·c#·插件·duckdb
iReachers1 天前
恒盾C#混淆加密大师 1.4.5 最新2026版本发布 (附CSDN下载地址)
c#·c#混淆·c#加密·wpf加密·winform加密