正如您所见,索引器的行为很像支持IEnumerator和IEnumerable接口的自定义集合,它们提供对容器子项的访问。其主要区别在于,与使用foreach循环访问内容不同,您可以像操作标准数组一样操作子对象的内部集合。现在重要的问题是:如何配置PeopleCollection类(或任何类/结构)以支持这一功能?索引器被表示为稍微修改的C#属性。在其最简单的形式中,索引器使用this[]语法创建。这里是PeopleCollection类所需的更新。