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

相关推荐
惊鸿一博8 小时前
网络端口开放访问权限_Windows 11 上确保防火墙允许指定端口如3001可被访问
网络·windows
xiaoshuaishuai89 小时前
C# vCenter跨云迁移的核心问题
开发语言·c#
旧物有情9 小时前
C#异步编程
网络·rpc·c#
软件无线电小方圆10 小时前
Windows下基于PyQt6上位机开发环境搭建
windows
蜀道山老天师11 小时前
OpenClaw Skills 技能开发 + 企业运维全场景实战(进阶篇)
人工智能·windows·microsoft
舟遥遥娓飘飘11 小时前
文稿起草系统,离线学习写作人的“思维 + 风格“,按学到的特征起草新文稿,再用反馈闭环持续提升
windows·学习
影寂ldy11 小时前
C# 三大内置委托(Action / Func / Predicate)+ Lambda
c++·算法·c#
HAPPY酷12 小时前
软件模拟 I2C vs 硬件 I2C:核心异同与工程选型指南
stm32·单片机·嵌入式硬件·物联网·microsoft
至此流年莫相忘12 小时前
Windows 环境下 RocketMQ 安装与 NSSM 后台服务化部署指南
windows·rocketmq
AI行业学习13 小时前
CC‑Switch v3.16.1 免费下载(Windows+macOS+Linux)、使用方法【2026.6.11】
linux·开发语言·windows·python·macos·前端框架·html