C# 中演示 IList 接口的程序

2024 年 8 月 29 日 | 4 分钟阅读

在 C# 中,**IList 接口** 是 **.NET** Framework 的一部分,定义在 System.Collections 命名空间中。它表示一个非泛型集合,其中的对象通过索引单独访问。IList 接口提供了添加、删除和访问列表状结构中元素的方法,它扩展了 ICollection 接口。

IList 接口中的成员

C# 中的 **IList 接口** 有几个成员。IList 接口的一些主要成员如下:

  1. Add: 在 IList 中添加新项。
  2. Clear: 清除 IList 中的所有项。
  3. Contains: 确定 IList 中是否包含特定值。
  4. IndexOf: 查找对象的第一个出现并返回其索引。
  5. Insert: 在提供的索引处将新元素插入到 IList 中。
  6. Remove: 从 IList 中删除特定对象的第一个出现。
  7. RemoveAt: 删除给定索引处的项。

性质

  1. IsFixedSize: 获取一个值,指示 IList 的大小是否固定。
  2. IsReadOnly: 获取一个值,指定 IList 是否只能读取。
  3. Item: 在给定索引处获取或设置元素。

实现

IList 接口由 **ArrayList, CollectionBase** 和 **List<T>** 等类实现,它们提供了接口定义的​​方法和属性的特定实现。

语法

它具有以下语法:

  • public interface IList<T>: 声明了一个名为 IList<T> 的泛型接口。<T> 语法表示该接口可以与特定类型 T 一起工作。例如,如果您有一个 IList<int>,则列表与整数一起工作。
  • Collections.Generic.ICollection<T>: 表示 IList<T> 接口继承自泛型 ICollection<T> 接口,该接口是 System.Collections.Generic 命名空间的一部分。ICollection<T> 扩展了 IEnumerable<T> 并提供了添加、删除和检查元素是否存在的方法。
  • Collections.Generic.IEnumerable<T>: 表示 IList<T> 接口还继承自泛型 IEnumerable<T> 接口。IEnumerable<T> 提供了迭代集合的方法。

使用 List<T> 类语法创建列表

演示 IList 接口的 C# 程序说明了与非泛型对象集合相关的关键概念。

示例

输出

Elements in the list are:
Element at index 0 is: Apple
Element at index 1 is: Banana
Element at index 2 is: Orange
Demonstrating other IList methods:
Banana is present in the list.
Index of 'Orange': 2
After removing 'Banana':
Element at index 0: Apple
Element at index 1: Orange

说明

1. 命名空间和类声明

它在 using 语句中包含程序所需的命名空间。声明了 Program 类。

2. Main 方法

程序以 **Main** 方法开始。

3. ArrayList 和 IList 的初始化

创建了一个 **ArrayList** 实例,并将其分配给 IList 接口(my_List)。

ArrayList 实现 IList 接口,是一个动态数组。

4. 添加元素

使用 **Add 函数** 将三个字符串元素("Apple"、"Banana" 和 "Orange")添加到 ArrayList 中。

5. 显示元素

程序使用 for 循环遍历列表(my_List),显示每个条目和索引。

6. 显示消息

一条消息表明程序即将演示其他 IList 方法。

7. 搜索元素

程序使用 Contains 方法检查列表是否包含元素 "Banana",并显示相应消息。

8. 查找索引

程序使用 **IndexOf** 函数查找并显示元素 **"Orange"** 的索引。

9. 移除元素并显示修改后的列表

程序使用 **Remove** 方法从列表中删除元素 "Banana"。

移除后,使用 **for 循环** 显示修改后的列表。

结论

此程序是使用 C# 中的 **IList** 接口和 **ArrayList** 类的一个实际示例。它涵盖了添加元素、按索引访问元素、搜索元素、查找元素的索引以及从列表中删除元素。它演示了 IList 接口提供的灵活性和功能。